// Code generated by ent, DO NOT EDIT. package ent import ( "context" "errors" "fmt" "schisandra-album-cloud-microservices/common/ent/predicate" "schisandra-album-cloud-microservices/common/ent/scaauthuser" "schisandra-album-cloud-microservices/common/ent/scaauthuserdevice" "time" "entgo.io/ent/dialect/sql" "entgo.io/ent/dialect/sql/sqlgraph" "entgo.io/ent/schema/field" ) // ScaAuthUserDeviceUpdate is the builder for updating ScaAuthUserDevice entities. type ScaAuthUserDeviceUpdate struct { config hooks []Hook mutation *ScaAuthUserDeviceMutation } // Where appends a list predicates to the ScaAuthUserDeviceUpdate builder. func (saudu *ScaAuthUserDeviceUpdate) Where(ps ...predicate.ScaAuthUserDevice) *ScaAuthUserDeviceUpdate { saudu.mutation.Where(ps...) return saudu } // SetUserID sets the "user_id" field. func (saudu *ScaAuthUserDeviceUpdate) SetUserID(s string) *ScaAuthUserDeviceUpdate { saudu.mutation.SetUserID(s) return saudu } // SetNillableUserID sets the "user_id" field if the given value is not nil. func (saudu *ScaAuthUserDeviceUpdate) SetNillableUserID(s *string) *ScaAuthUserDeviceUpdate { if s != nil { saudu.SetUserID(*s) } return saudu } // SetIP sets the "ip" field. func (saudu *ScaAuthUserDeviceUpdate) SetIP(s string) *ScaAuthUserDeviceUpdate { saudu.mutation.SetIP(s) return saudu } // SetNillableIP sets the "ip" field if the given value is not nil. func (saudu *ScaAuthUserDeviceUpdate) SetNillableIP(s *string) *ScaAuthUserDeviceUpdate { if s != nil { saudu.SetIP(*s) } return saudu } // SetLocation sets the "location" field. func (saudu *ScaAuthUserDeviceUpdate) SetLocation(s string) *ScaAuthUserDeviceUpdate { saudu.mutation.SetLocation(s) return saudu } // SetNillableLocation sets the "location" field if the given value is not nil. func (saudu *ScaAuthUserDeviceUpdate) SetNillableLocation(s *string) *ScaAuthUserDeviceUpdate { if s != nil { saudu.SetLocation(*s) } return saudu } // SetAgent sets the "agent" field. func (saudu *ScaAuthUserDeviceUpdate) SetAgent(s string) *ScaAuthUserDeviceUpdate { saudu.mutation.SetAgent(s) return saudu } // SetNillableAgent sets the "agent" field if the given value is not nil. func (saudu *ScaAuthUserDeviceUpdate) SetNillableAgent(s *string) *ScaAuthUserDeviceUpdate { if s != nil { saudu.SetAgent(*s) } return saudu } // SetUpdateAt sets the "update_at" field. func (saudu *ScaAuthUserDeviceUpdate) SetUpdateAt(t time.Time) *ScaAuthUserDeviceUpdate { saudu.mutation.SetUpdateAt(t) return saudu } // SetDeleted sets the "deleted" field. func (saudu *ScaAuthUserDeviceUpdate) SetDeleted(i int) *ScaAuthUserDeviceUpdate { saudu.mutation.ResetDeleted() saudu.mutation.SetDeleted(i) return saudu } // SetNillableDeleted sets the "deleted" field if the given value is not nil. func (saudu *ScaAuthUserDeviceUpdate) SetNillableDeleted(i *int) *ScaAuthUserDeviceUpdate { if i != nil { saudu.SetDeleted(*i) } return saudu } // AddDeleted adds i to the "deleted" field. func (saudu *ScaAuthUserDeviceUpdate) AddDeleted(i int) *ScaAuthUserDeviceUpdate { saudu.mutation.AddDeleted(i) return saudu } // SetBrowser sets the "browser" field. func (saudu *ScaAuthUserDeviceUpdate) SetBrowser(s string) *ScaAuthUserDeviceUpdate { saudu.mutation.SetBrowser(s) return saudu } // SetNillableBrowser sets the "browser" field if the given value is not nil. func (saudu *ScaAuthUserDeviceUpdate) SetNillableBrowser(s *string) *ScaAuthUserDeviceUpdate { if s != nil { saudu.SetBrowser(*s) } return saudu } // SetOperatingSystem sets the "operating_system" field. func (saudu *ScaAuthUserDeviceUpdate) SetOperatingSystem(s string) *ScaAuthUserDeviceUpdate { saudu.mutation.SetOperatingSystem(s) return saudu } // SetNillableOperatingSystem sets the "operating_system" field if the given value is not nil. func (saudu *ScaAuthUserDeviceUpdate) SetNillableOperatingSystem(s *string) *ScaAuthUserDeviceUpdate { if s != nil { saudu.SetOperatingSystem(*s) } return saudu } // SetBrowserVersion sets the "browser_version" field. func (saudu *ScaAuthUserDeviceUpdate) SetBrowserVersion(s string) *ScaAuthUserDeviceUpdate { saudu.mutation.SetBrowserVersion(s) return saudu } // SetNillableBrowserVersion sets the "browser_version" field if the given value is not nil. func (saudu *ScaAuthUserDeviceUpdate) SetNillableBrowserVersion(s *string) *ScaAuthUserDeviceUpdate { if s != nil { saudu.SetBrowserVersion(*s) } return saudu } // SetMobile sets the "mobile" field. func (saudu *ScaAuthUserDeviceUpdate) SetMobile(i int) *ScaAuthUserDeviceUpdate { saudu.mutation.ResetMobile() saudu.mutation.SetMobile(i) return saudu } // SetNillableMobile sets the "mobile" field if the given value is not nil. func (saudu *ScaAuthUserDeviceUpdate) SetNillableMobile(i *int) *ScaAuthUserDeviceUpdate { if i != nil { saudu.SetMobile(*i) } return saudu } // AddMobile adds i to the "mobile" field. func (saudu *ScaAuthUserDeviceUpdate) AddMobile(i int) *ScaAuthUserDeviceUpdate { saudu.mutation.AddMobile(i) return saudu } // SetBot sets the "bot" field. func (saudu *ScaAuthUserDeviceUpdate) SetBot(i int) *ScaAuthUserDeviceUpdate { saudu.mutation.ResetBot() saudu.mutation.SetBot(i) return saudu } // SetNillableBot sets the "bot" field if the given value is not nil. func (saudu *ScaAuthUserDeviceUpdate) SetNillableBot(i *int) *ScaAuthUserDeviceUpdate { if i != nil { saudu.SetBot(*i) } return saudu } // AddBot adds i to the "bot" field. func (saudu *ScaAuthUserDeviceUpdate) AddBot(i int) *ScaAuthUserDeviceUpdate { saudu.mutation.AddBot(i) return saudu } // SetMozilla sets the "mozilla" field. func (saudu *ScaAuthUserDeviceUpdate) SetMozilla(s string) *ScaAuthUserDeviceUpdate { saudu.mutation.SetMozilla(s) return saudu } // SetNillableMozilla sets the "mozilla" field if the given value is not nil. func (saudu *ScaAuthUserDeviceUpdate) SetNillableMozilla(s *string) *ScaAuthUserDeviceUpdate { if s != nil { saudu.SetMozilla(*s) } return saudu } // SetPlatform sets the "platform" field. func (saudu *ScaAuthUserDeviceUpdate) SetPlatform(s string) *ScaAuthUserDeviceUpdate { saudu.mutation.SetPlatform(s) return saudu } // SetNillablePlatform sets the "platform" field if the given value is not nil. func (saudu *ScaAuthUserDeviceUpdate) SetNillablePlatform(s *string) *ScaAuthUserDeviceUpdate { if s != nil { saudu.SetPlatform(*s) } return saudu } // SetEngineName sets the "engine_name" field. func (saudu *ScaAuthUserDeviceUpdate) SetEngineName(s string) *ScaAuthUserDeviceUpdate { saudu.mutation.SetEngineName(s) return saudu } // SetNillableEngineName sets the "engine_name" field if the given value is not nil. func (saudu *ScaAuthUserDeviceUpdate) SetNillableEngineName(s *string) *ScaAuthUserDeviceUpdate { if s != nil { saudu.SetEngineName(*s) } return saudu } // SetEngineVersion sets the "engine_version" field. func (saudu *ScaAuthUserDeviceUpdate) SetEngineVersion(s string) *ScaAuthUserDeviceUpdate { saudu.mutation.SetEngineVersion(s) return saudu } // SetNillableEngineVersion sets the "engine_version" field if the given value is not nil. func (saudu *ScaAuthUserDeviceUpdate) SetNillableEngineVersion(s *string) *ScaAuthUserDeviceUpdate { if s != nil { saudu.SetEngineVersion(*s) } return saudu } // SetScaAuthUserID sets the "sca_auth_user" edge to the ScaAuthUser entity by ID. func (saudu *ScaAuthUserDeviceUpdate) SetScaAuthUserID(id int64) *ScaAuthUserDeviceUpdate { saudu.mutation.SetScaAuthUserID(id) return saudu } // SetNillableScaAuthUserID sets the "sca_auth_user" edge to the ScaAuthUser entity by ID if the given value is not nil. func (saudu *ScaAuthUserDeviceUpdate) SetNillableScaAuthUserID(id *int64) *ScaAuthUserDeviceUpdate { if id != nil { saudu = saudu.SetScaAuthUserID(*id) } return saudu } // SetScaAuthUser sets the "sca_auth_user" edge to the ScaAuthUser entity. func (saudu *ScaAuthUserDeviceUpdate) SetScaAuthUser(s *ScaAuthUser) *ScaAuthUserDeviceUpdate { return saudu.SetScaAuthUserID(s.ID) } // Mutation returns the ScaAuthUserDeviceMutation object of the builder. func (saudu *ScaAuthUserDeviceUpdate) Mutation() *ScaAuthUserDeviceMutation { return saudu.mutation } // ClearScaAuthUser clears the "sca_auth_user" edge to the ScaAuthUser entity. func (saudu *ScaAuthUserDeviceUpdate) ClearScaAuthUser() *ScaAuthUserDeviceUpdate { saudu.mutation.ClearScaAuthUser() return saudu } // Save executes the query and returns the number of nodes affected by the update operation. func (saudu *ScaAuthUserDeviceUpdate) Save(ctx context.Context) (int, error) { saudu.defaults() return withHooks(ctx, saudu.sqlSave, saudu.mutation, saudu.hooks) } // SaveX is like Save, but panics if an error occurs. func (saudu *ScaAuthUserDeviceUpdate) SaveX(ctx context.Context) int { affected, err := saudu.Save(ctx) if err != nil { panic(err) } return affected } // Exec executes the query. func (saudu *ScaAuthUserDeviceUpdate) Exec(ctx context.Context) error { _, err := saudu.Save(ctx) return err } // ExecX is like Exec, but panics if an error occurs. func (saudu *ScaAuthUserDeviceUpdate) ExecX(ctx context.Context) { if err := saudu.Exec(ctx); err != nil { panic(err) } } // defaults sets the default values of the builder before save. func (saudu *ScaAuthUserDeviceUpdate) defaults() { if _, ok := saudu.mutation.UpdateAt(); !ok { v := scaauthuserdevice.UpdateDefaultUpdateAt() saudu.mutation.SetUpdateAt(v) } } // check runs all checks and user-defined validators on the builder. func (saudu *ScaAuthUserDeviceUpdate) check() error { if v, ok := saudu.mutation.UserID(); ok { if err := scaauthuserdevice.UserIDValidator(v); err != nil { return &ValidationError{Name: "user_id", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.user_id": %w`, err)} } } if v, ok := saudu.mutation.IP(); ok { if err := scaauthuserdevice.IPValidator(v); err != nil { return &ValidationError{Name: "ip", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.ip": %w`, err)} } } if v, ok := saudu.mutation.Location(); ok { if err := scaauthuserdevice.LocationValidator(v); err != nil { return &ValidationError{Name: "location", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.location": %w`, err)} } } if v, ok := saudu.mutation.Agent(); ok { if err := scaauthuserdevice.AgentValidator(v); err != nil { return &ValidationError{Name: "agent", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.agent": %w`, err)} } } if v, ok := saudu.mutation.Browser(); ok { if err := scaauthuserdevice.BrowserValidator(v); err != nil { return &ValidationError{Name: "browser", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.browser": %w`, err)} } } if v, ok := saudu.mutation.OperatingSystem(); ok { if err := scaauthuserdevice.OperatingSystemValidator(v); err != nil { return &ValidationError{Name: "operating_system", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.operating_system": %w`, err)} } } if v, ok := saudu.mutation.BrowserVersion(); ok { if err := scaauthuserdevice.BrowserVersionValidator(v); err != nil { return &ValidationError{Name: "browser_version", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.browser_version": %w`, err)} } } if v, ok := saudu.mutation.Mozilla(); ok { if err := scaauthuserdevice.MozillaValidator(v); err != nil { return &ValidationError{Name: "mozilla", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.mozilla": %w`, err)} } } if v, ok := saudu.mutation.Platform(); ok { if err := scaauthuserdevice.PlatformValidator(v); err != nil { return &ValidationError{Name: "platform", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.platform": %w`, err)} } } if v, ok := saudu.mutation.EngineName(); ok { if err := scaauthuserdevice.EngineNameValidator(v); err != nil { return &ValidationError{Name: "engine_name", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.engine_name": %w`, err)} } } if v, ok := saudu.mutation.EngineVersion(); ok { if err := scaauthuserdevice.EngineVersionValidator(v); err != nil { return &ValidationError{Name: "engine_version", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.engine_version": %w`, err)} } } return nil } func (saudu *ScaAuthUserDeviceUpdate) sqlSave(ctx context.Context) (n int, err error) { if err := saudu.check(); err != nil { return n, err } _spec := sqlgraph.NewUpdateSpec(scaauthuserdevice.Table, scaauthuserdevice.Columns, sqlgraph.NewFieldSpec(scaauthuserdevice.FieldID, field.TypeInt64)) if ps := saudu.mutation.predicates; len(ps) > 0 { _spec.Predicate = func(selector *sql.Selector) { for i := range ps { ps[i](selector) } } } if value, ok := saudu.mutation.UserID(); ok { _spec.SetField(scaauthuserdevice.FieldUserID, field.TypeString, value) } if value, ok := saudu.mutation.IP(); ok { _spec.SetField(scaauthuserdevice.FieldIP, field.TypeString, value) } if value, ok := saudu.mutation.Location(); ok { _spec.SetField(scaauthuserdevice.FieldLocation, field.TypeString, value) } if value, ok := saudu.mutation.Agent(); ok { _spec.SetField(scaauthuserdevice.FieldAgent, field.TypeString, value) } if saudu.mutation.CreatedAtCleared() { _spec.ClearField(scaauthuserdevice.FieldCreatedAt, field.TypeTime) } if value, ok := saudu.mutation.UpdateAt(); ok { _spec.SetField(scaauthuserdevice.FieldUpdateAt, field.TypeTime, value) } if value, ok := saudu.mutation.Deleted(); ok { _spec.SetField(scaauthuserdevice.FieldDeleted, field.TypeInt, value) } if value, ok := saudu.mutation.AddedDeleted(); ok { _spec.AddField(scaauthuserdevice.FieldDeleted, field.TypeInt, value) } if value, ok := saudu.mutation.Browser(); ok { _spec.SetField(scaauthuserdevice.FieldBrowser, field.TypeString, value) } if value, ok := saudu.mutation.OperatingSystem(); ok { _spec.SetField(scaauthuserdevice.FieldOperatingSystem, field.TypeString, value) } if value, ok := saudu.mutation.BrowserVersion(); ok { _spec.SetField(scaauthuserdevice.FieldBrowserVersion, field.TypeString, value) } if value, ok := saudu.mutation.Mobile(); ok { _spec.SetField(scaauthuserdevice.FieldMobile, field.TypeInt, value) } if value, ok := saudu.mutation.AddedMobile(); ok { _spec.AddField(scaauthuserdevice.FieldMobile, field.TypeInt, value) } if value, ok := saudu.mutation.Bot(); ok { _spec.SetField(scaauthuserdevice.FieldBot, field.TypeInt, value) } if value, ok := saudu.mutation.AddedBot(); ok { _spec.AddField(scaauthuserdevice.FieldBot, field.TypeInt, value) } if value, ok := saudu.mutation.Mozilla(); ok { _spec.SetField(scaauthuserdevice.FieldMozilla, field.TypeString, value) } if value, ok := saudu.mutation.Platform(); ok { _spec.SetField(scaauthuserdevice.FieldPlatform, field.TypeString, value) } if value, ok := saudu.mutation.EngineName(); ok { _spec.SetField(scaauthuserdevice.FieldEngineName, field.TypeString, value) } if value, ok := saudu.mutation.EngineVersion(); ok { _spec.SetField(scaauthuserdevice.FieldEngineVersion, field.TypeString, value) } if saudu.mutation.ScaAuthUserCleared() { edge := &sqlgraph.EdgeSpec{ Rel: sqlgraph.M2O, Inverse: true, Table: scaauthuserdevice.ScaAuthUserTable, Columns: []string{scaauthuserdevice.ScaAuthUserColumn}, Bidi: false, Target: &sqlgraph.EdgeTarget{ IDSpec: sqlgraph.NewFieldSpec(scaauthuser.FieldID, field.TypeInt64), }, } _spec.Edges.Clear = append(_spec.Edges.Clear, edge) } if nodes := saudu.mutation.ScaAuthUserIDs(); len(nodes) > 0 { edge := &sqlgraph.EdgeSpec{ Rel: sqlgraph.M2O, Inverse: true, Table: scaauthuserdevice.ScaAuthUserTable, Columns: []string{scaauthuserdevice.ScaAuthUserColumn}, Bidi: false, Target: &sqlgraph.EdgeTarget{ IDSpec: sqlgraph.NewFieldSpec(scaauthuser.FieldID, field.TypeInt64), }, } for _, k := range nodes { edge.Target.Nodes = append(edge.Target.Nodes, k) } _spec.Edges.Add = append(_spec.Edges.Add, edge) } if n, err = sqlgraph.UpdateNodes(ctx, saudu.driver, _spec); err != nil { if _, ok := err.(*sqlgraph.NotFoundError); ok { err = &NotFoundError{scaauthuserdevice.Label} } else if sqlgraph.IsConstraintError(err) { err = &ConstraintError{msg: err.Error(), wrap: err} } return 0, err } saudu.mutation.done = true return n, nil } // ScaAuthUserDeviceUpdateOne is the builder for updating a single ScaAuthUserDevice entity. type ScaAuthUserDeviceUpdateOne struct { config fields []string hooks []Hook mutation *ScaAuthUserDeviceMutation } // SetUserID sets the "user_id" field. func (sauduo *ScaAuthUserDeviceUpdateOne) SetUserID(s string) *ScaAuthUserDeviceUpdateOne { sauduo.mutation.SetUserID(s) return sauduo } // SetNillableUserID sets the "user_id" field if the given value is not nil. func (sauduo *ScaAuthUserDeviceUpdateOne) SetNillableUserID(s *string) *ScaAuthUserDeviceUpdateOne { if s != nil { sauduo.SetUserID(*s) } return sauduo } // SetIP sets the "ip" field. func (sauduo *ScaAuthUserDeviceUpdateOne) SetIP(s string) *ScaAuthUserDeviceUpdateOne { sauduo.mutation.SetIP(s) return sauduo } // SetNillableIP sets the "ip" field if the given value is not nil. func (sauduo *ScaAuthUserDeviceUpdateOne) SetNillableIP(s *string) *ScaAuthUserDeviceUpdateOne { if s != nil { sauduo.SetIP(*s) } return sauduo } // SetLocation sets the "location" field. func (sauduo *ScaAuthUserDeviceUpdateOne) SetLocation(s string) *ScaAuthUserDeviceUpdateOne { sauduo.mutation.SetLocation(s) return sauduo } // SetNillableLocation sets the "location" field if the given value is not nil. func (sauduo *ScaAuthUserDeviceUpdateOne) SetNillableLocation(s *string) *ScaAuthUserDeviceUpdateOne { if s != nil { sauduo.SetLocation(*s) } return sauduo } // SetAgent sets the "agent" field. func (sauduo *ScaAuthUserDeviceUpdateOne) SetAgent(s string) *ScaAuthUserDeviceUpdateOne { sauduo.mutation.SetAgent(s) return sauduo } // SetNillableAgent sets the "agent" field if the given value is not nil. func (sauduo *ScaAuthUserDeviceUpdateOne) SetNillableAgent(s *string) *ScaAuthUserDeviceUpdateOne { if s != nil { sauduo.SetAgent(*s) } return sauduo } // SetUpdateAt sets the "update_at" field. func (sauduo *ScaAuthUserDeviceUpdateOne) SetUpdateAt(t time.Time) *ScaAuthUserDeviceUpdateOne { sauduo.mutation.SetUpdateAt(t) return sauduo } // SetDeleted sets the "deleted" field. func (sauduo *ScaAuthUserDeviceUpdateOne) SetDeleted(i int) *ScaAuthUserDeviceUpdateOne { sauduo.mutation.ResetDeleted() sauduo.mutation.SetDeleted(i) return sauduo } // SetNillableDeleted sets the "deleted" field if the given value is not nil. func (sauduo *ScaAuthUserDeviceUpdateOne) SetNillableDeleted(i *int) *ScaAuthUserDeviceUpdateOne { if i != nil { sauduo.SetDeleted(*i) } return sauduo } // AddDeleted adds i to the "deleted" field. func (sauduo *ScaAuthUserDeviceUpdateOne) AddDeleted(i int) *ScaAuthUserDeviceUpdateOne { sauduo.mutation.AddDeleted(i) return sauduo } // SetBrowser sets the "browser" field. func (sauduo *ScaAuthUserDeviceUpdateOne) SetBrowser(s string) *ScaAuthUserDeviceUpdateOne { sauduo.mutation.SetBrowser(s) return sauduo } // SetNillableBrowser sets the "browser" field if the given value is not nil. func (sauduo *ScaAuthUserDeviceUpdateOne) SetNillableBrowser(s *string) *ScaAuthUserDeviceUpdateOne { if s != nil { sauduo.SetBrowser(*s) } return sauduo } // SetOperatingSystem sets the "operating_system" field. func (sauduo *ScaAuthUserDeviceUpdateOne) SetOperatingSystem(s string) *ScaAuthUserDeviceUpdateOne { sauduo.mutation.SetOperatingSystem(s) return sauduo } // SetNillableOperatingSystem sets the "operating_system" field if the given value is not nil. func (sauduo *ScaAuthUserDeviceUpdateOne) SetNillableOperatingSystem(s *string) *ScaAuthUserDeviceUpdateOne { if s != nil { sauduo.SetOperatingSystem(*s) } return sauduo } // SetBrowserVersion sets the "browser_version" field. func (sauduo *ScaAuthUserDeviceUpdateOne) SetBrowserVersion(s string) *ScaAuthUserDeviceUpdateOne { sauduo.mutation.SetBrowserVersion(s) return sauduo } // SetNillableBrowserVersion sets the "browser_version" field if the given value is not nil. func (sauduo *ScaAuthUserDeviceUpdateOne) SetNillableBrowserVersion(s *string) *ScaAuthUserDeviceUpdateOne { if s != nil { sauduo.SetBrowserVersion(*s) } return sauduo } // SetMobile sets the "mobile" field. func (sauduo *ScaAuthUserDeviceUpdateOne) SetMobile(i int) *ScaAuthUserDeviceUpdateOne { sauduo.mutation.ResetMobile() sauduo.mutation.SetMobile(i) return sauduo } // SetNillableMobile sets the "mobile" field if the given value is not nil. func (sauduo *ScaAuthUserDeviceUpdateOne) SetNillableMobile(i *int) *ScaAuthUserDeviceUpdateOne { if i != nil { sauduo.SetMobile(*i) } return sauduo } // AddMobile adds i to the "mobile" field. func (sauduo *ScaAuthUserDeviceUpdateOne) AddMobile(i int) *ScaAuthUserDeviceUpdateOne { sauduo.mutation.AddMobile(i) return sauduo } // SetBot sets the "bot" field. func (sauduo *ScaAuthUserDeviceUpdateOne) SetBot(i int) *ScaAuthUserDeviceUpdateOne { sauduo.mutation.ResetBot() sauduo.mutation.SetBot(i) return sauduo } // SetNillableBot sets the "bot" field if the given value is not nil. func (sauduo *ScaAuthUserDeviceUpdateOne) SetNillableBot(i *int) *ScaAuthUserDeviceUpdateOne { if i != nil { sauduo.SetBot(*i) } return sauduo } // AddBot adds i to the "bot" field. func (sauduo *ScaAuthUserDeviceUpdateOne) AddBot(i int) *ScaAuthUserDeviceUpdateOne { sauduo.mutation.AddBot(i) return sauduo } // SetMozilla sets the "mozilla" field. func (sauduo *ScaAuthUserDeviceUpdateOne) SetMozilla(s string) *ScaAuthUserDeviceUpdateOne { sauduo.mutation.SetMozilla(s) return sauduo } // SetNillableMozilla sets the "mozilla" field if the given value is not nil. func (sauduo *ScaAuthUserDeviceUpdateOne) SetNillableMozilla(s *string) *ScaAuthUserDeviceUpdateOne { if s != nil { sauduo.SetMozilla(*s) } return sauduo } // SetPlatform sets the "platform" field. func (sauduo *ScaAuthUserDeviceUpdateOne) SetPlatform(s string) *ScaAuthUserDeviceUpdateOne { sauduo.mutation.SetPlatform(s) return sauduo } // SetNillablePlatform sets the "platform" field if the given value is not nil. func (sauduo *ScaAuthUserDeviceUpdateOne) SetNillablePlatform(s *string) *ScaAuthUserDeviceUpdateOne { if s != nil { sauduo.SetPlatform(*s) } return sauduo } // SetEngineName sets the "engine_name" field. func (sauduo *ScaAuthUserDeviceUpdateOne) SetEngineName(s string) *ScaAuthUserDeviceUpdateOne { sauduo.mutation.SetEngineName(s) return sauduo } // SetNillableEngineName sets the "engine_name" field if the given value is not nil. func (sauduo *ScaAuthUserDeviceUpdateOne) SetNillableEngineName(s *string) *ScaAuthUserDeviceUpdateOne { if s != nil { sauduo.SetEngineName(*s) } return sauduo } // SetEngineVersion sets the "engine_version" field. func (sauduo *ScaAuthUserDeviceUpdateOne) SetEngineVersion(s string) *ScaAuthUserDeviceUpdateOne { sauduo.mutation.SetEngineVersion(s) return sauduo } // SetNillableEngineVersion sets the "engine_version" field if the given value is not nil. func (sauduo *ScaAuthUserDeviceUpdateOne) SetNillableEngineVersion(s *string) *ScaAuthUserDeviceUpdateOne { if s != nil { sauduo.SetEngineVersion(*s) } return sauduo } // SetScaAuthUserID sets the "sca_auth_user" edge to the ScaAuthUser entity by ID. func (sauduo *ScaAuthUserDeviceUpdateOne) SetScaAuthUserID(id int64) *ScaAuthUserDeviceUpdateOne { sauduo.mutation.SetScaAuthUserID(id) return sauduo } // SetNillableScaAuthUserID sets the "sca_auth_user" edge to the ScaAuthUser entity by ID if the given value is not nil. func (sauduo *ScaAuthUserDeviceUpdateOne) SetNillableScaAuthUserID(id *int64) *ScaAuthUserDeviceUpdateOne { if id != nil { sauduo = sauduo.SetScaAuthUserID(*id) } return sauduo } // SetScaAuthUser sets the "sca_auth_user" edge to the ScaAuthUser entity. func (sauduo *ScaAuthUserDeviceUpdateOne) SetScaAuthUser(s *ScaAuthUser) *ScaAuthUserDeviceUpdateOne { return sauduo.SetScaAuthUserID(s.ID) } // Mutation returns the ScaAuthUserDeviceMutation object of the builder. func (sauduo *ScaAuthUserDeviceUpdateOne) Mutation() *ScaAuthUserDeviceMutation { return sauduo.mutation } // ClearScaAuthUser clears the "sca_auth_user" edge to the ScaAuthUser entity. func (sauduo *ScaAuthUserDeviceUpdateOne) ClearScaAuthUser() *ScaAuthUserDeviceUpdateOne { sauduo.mutation.ClearScaAuthUser() return sauduo } // Where appends a list predicates to the ScaAuthUserDeviceUpdate builder. func (sauduo *ScaAuthUserDeviceUpdateOne) Where(ps ...predicate.ScaAuthUserDevice) *ScaAuthUserDeviceUpdateOne { sauduo.mutation.Where(ps...) return sauduo } // Select allows selecting one or more fields (columns) of the returned entity. // The default is selecting all fields defined in the entity schema. func (sauduo *ScaAuthUserDeviceUpdateOne) Select(field string, fields ...string) *ScaAuthUserDeviceUpdateOne { sauduo.fields = append([]string{field}, fields...) return sauduo } // Save executes the query and returns the updated ScaAuthUserDevice entity. func (sauduo *ScaAuthUserDeviceUpdateOne) Save(ctx context.Context) (*ScaAuthUserDevice, error) { sauduo.defaults() return withHooks(ctx, sauduo.sqlSave, sauduo.mutation, sauduo.hooks) } // SaveX is like Save, but panics if an error occurs. func (sauduo *ScaAuthUserDeviceUpdateOne) SaveX(ctx context.Context) *ScaAuthUserDevice { node, err := sauduo.Save(ctx) if err != nil { panic(err) } return node } // Exec executes the query on the entity. func (sauduo *ScaAuthUserDeviceUpdateOne) Exec(ctx context.Context) error { _, err := sauduo.Save(ctx) return err } // ExecX is like Exec, but panics if an error occurs. func (sauduo *ScaAuthUserDeviceUpdateOne) ExecX(ctx context.Context) { if err := sauduo.Exec(ctx); err != nil { panic(err) } } // defaults sets the default values of the builder before save. func (sauduo *ScaAuthUserDeviceUpdateOne) defaults() { if _, ok := sauduo.mutation.UpdateAt(); !ok { v := scaauthuserdevice.UpdateDefaultUpdateAt() sauduo.mutation.SetUpdateAt(v) } } // check runs all checks and user-defined validators on the builder. func (sauduo *ScaAuthUserDeviceUpdateOne) check() error { if v, ok := sauduo.mutation.UserID(); ok { if err := scaauthuserdevice.UserIDValidator(v); err != nil { return &ValidationError{Name: "user_id", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.user_id": %w`, err)} } } if v, ok := sauduo.mutation.IP(); ok { if err := scaauthuserdevice.IPValidator(v); err != nil { return &ValidationError{Name: "ip", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.ip": %w`, err)} } } if v, ok := sauduo.mutation.Location(); ok { if err := scaauthuserdevice.LocationValidator(v); err != nil { return &ValidationError{Name: "location", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.location": %w`, err)} } } if v, ok := sauduo.mutation.Agent(); ok { if err := scaauthuserdevice.AgentValidator(v); err != nil { return &ValidationError{Name: "agent", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.agent": %w`, err)} } } if v, ok := sauduo.mutation.Browser(); ok { if err := scaauthuserdevice.BrowserValidator(v); err != nil { return &ValidationError{Name: "browser", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.browser": %w`, err)} } } if v, ok := sauduo.mutation.OperatingSystem(); ok { if err := scaauthuserdevice.OperatingSystemValidator(v); err != nil { return &ValidationError{Name: "operating_system", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.operating_system": %w`, err)} } } if v, ok := sauduo.mutation.BrowserVersion(); ok { if err := scaauthuserdevice.BrowserVersionValidator(v); err != nil { return &ValidationError{Name: "browser_version", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.browser_version": %w`, err)} } } if v, ok := sauduo.mutation.Mozilla(); ok { if err := scaauthuserdevice.MozillaValidator(v); err != nil { return &ValidationError{Name: "mozilla", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.mozilla": %w`, err)} } } if v, ok := sauduo.mutation.Platform(); ok { if err := scaauthuserdevice.PlatformValidator(v); err != nil { return &ValidationError{Name: "platform", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.platform": %w`, err)} } } if v, ok := sauduo.mutation.EngineName(); ok { if err := scaauthuserdevice.EngineNameValidator(v); err != nil { return &ValidationError{Name: "engine_name", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.engine_name": %w`, err)} } } if v, ok := sauduo.mutation.EngineVersion(); ok { if err := scaauthuserdevice.EngineVersionValidator(v); err != nil { return &ValidationError{Name: "engine_version", err: fmt.Errorf(`ent: validator failed for field "ScaAuthUserDevice.engine_version": %w`, err)} } } return nil } func (sauduo *ScaAuthUserDeviceUpdateOne) sqlSave(ctx context.Context) (_node *ScaAuthUserDevice, err error) { if err := sauduo.check(); err != nil { return _node, err } _spec := sqlgraph.NewUpdateSpec(scaauthuserdevice.Table, scaauthuserdevice.Columns, sqlgraph.NewFieldSpec(scaauthuserdevice.FieldID, field.TypeInt64)) id, ok := sauduo.mutation.ID() if !ok { return nil, &ValidationError{Name: "id", err: errors.New(`ent: missing "ScaAuthUserDevice.id" for update`)} } _spec.Node.ID.Value = id if fields := sauduo.fields; len(fields) > 0 { _spec.Node.Columns = make([]string, 0, len(fields)) _spec.Node.Columns = append(_spec.Node.Columns, scaauthuserdevice.FieldID) for _, f := range fields { if !scaauthuserdevice.ValidColumn(f) { return nil, &ValidationError{Name: f, err: fmt.Errorf("ent: invalid field %q for query", f)} } if f != scaauthuserdevice.FieldID { _spec.Node.Columns = append(_spec.Node.Columns, f) } } } if ps := sauduo.mutation.predicates; len(ps) > 0 { _spec.Predicate = func(selector *sql.Selector) { for i := range ps { ps[i](selector) } } } if value, ok := sauduo.mutation.UserID(); ok { _spec.SetField(scaauthuserdevice.FieldUserID, field.TypeString, value) } if value, ok := sauduo.mutation.IP(); ok { _spec.SetField(scaauthuserdevice.FieldIP, field.TypeString, value) } if value, ok := sauduo.mutation.Location(); ok { _spec.SetField(scaauthuserdevice.FieldLocation, field.TypeString, value) } if value, ok := sauduo.mutation.Agent(); ok { _spec.SetField(scaauthuserdevice.FieldAgent, field.TypeString, value) } if sauduo.mutation.CreatedAtCleared() { _spec.ClearField(scaauthuserdevice.FieldCreatedAt, field.TypeTime) } if value, ok := sauduo.mutation.UpdateAt(); ok { _spec.SetField(scaauthuserdevice.FieldUpdateAt, field.TypeTime, value) } if value, ok := sauduo.mutation.Deleted(); ok { _spec.SetField(scaauthuserdevice.FieldDeleted, field.TypeInt, value) } if value, ok := sauduo.mutation.AddedDeleted(); ok { _spec.AddField(scaauthuserdevice.FieldDeleted, field.TypeInt, value) } if value, ok := sauduo.mutation.Browser(); ok { _spec.SetField(scaauthuserdevice.FieldBrowser, field.TypeString, value) } if value, ok := sauduo.mutation.OperatingSystem(); ok { _spec.SetField(scaauthuserdevice.FieldOperatingSystem, field.TypeString, value) } if value, ok := sauduo.mutation.BrowserVersion(); ok { _spec.SetField(scaauthuserdevice.FieldBrowserVersion, field.TypeString, value) } if value, ok := sauduo.mutation.Mobile(); ok { _spec.SetField(scaauthuserdevice.FieldMobile, field.TypeInt, value) } if value, ok := sauduo.mutation.AddedMobile(); ok { _spec.AddField(scaauthuserdevice.FieldMobile, field.TypeInt, value) } if value, ok := sauduo.mutation.Bot(); ok { _spec.SetField(scaauthuserdevice.FieldBot, field.TypeInt, value) } if value, ok := sauduo.mutation.AddedBot(); ok { _spec.AddField(scaauthuserdevice.FieldBot, field.TypeInt, value) } if value, ok := sauduo.mutation.Mozilla(); ok { _spec.SetField(scaauthuserdevice.FieldMozilla, field.TypeString, value) } if value, ok := sauduo.mutation.Platform(); ok { _spec.SetField(scaauthuserdevice.FieldPlatform, field.TypeString, value) } if value, ok := sauduo.mutation.EngineName(); ok { _spec.SetField(scaauthuserdevice.FieldEngineName, field.TypeString, value) } if value, ok := sauduo.mutation.EngineVersion(); ok { _spec.SetField(scaauthuserdevice.FieldEngineVersion, field.TypeString, value) } if sauduo.mutation.ScaAuthUserCleared() { edge := &sqlgraph.EdgeSpec{ Rel: sqlgraph.M2O, Inverse: true, Table: scaauthuserdevice.ScaAuthUserTable, Columns: []string{scaauthuserdevice.ScaAuthUserColumn}, Bidi: false, Target: &sqlgraph.EdgeTarget{ IDSpec: sqlgraph.NewFieldSpec(scaauthuser.FieldID, field.TypeInt64), }, } _spec.Edges.Clear = append(_spec.Edges.Clear, edge) } if nodes := sauduo.mutation.ScaAuthUserIDs(); len(nodes) > 0 { edge := &sqlgraph.EdgeSpec{ Rel: sqlgraph.M2O, Inverse: true, Table: scaauthuserdevice.ScaAuthUserTable, Columns: []string{scaauthuserdevice.ScaAuthUserColumn}, Bidi: false, Target: &sqlgraph.EdgeTarget{ IDSpec: sqlgraph.NewFieldSpec(scaauthuser.FieldID, field.TypeInt64), }, } for _, k := range nodes { edge.Target.Nodes = append(edge.Target.Nodes, k) } _spec.Edges.Add = append(_spec.Edges.Add, edge) } _node = &ScaAuthUserDevice{config: sauduo.config} _spec.Assign = _node.assignValues _spec.ScanValues = _node.scanValues if err = sqlgraph.UpdateNode(ctx, sauduo.driver, _spec); err != nil { if _, ok := err.(*sqlgraph.NotFoundError); ok { err = &NotFoundError{scaauthuserdevice.Label} } else if sqlgraph.IsConstraintError(err) { err = &ConstraintError{msg: err.Error(), wrap: err} } return nil, err } sauduo.mutation.done = true return _node, nil }