// Code generated by ent, DO NOT EDIT. package ent import ( "bj_power_wms/ent/agvtask" "context" "errors" "fmt" "entgo.io/ent/dialect/sql" "entgo.io/ent/dialect/sql/sqlgraph" "entgo.io/ent/schema/field" ) // AgvTaskCreate is the builder for creating a AgvTask entity. type AgvTaskCreate struct { config mutation *AgvTaskMutation hooks []Hook conflict []sql.ConflictOption } // SetTaskNo sets the "task_no" field. func (_c *AgvTaskCreate) SetTaskNo(v string) *AgvTaskCreate { _c.mutation.SetTaskNo(v) return _c } // SetHikTaskCode sets the "hik_task_code" field. func (_c *AgvTaskCreate) SetHikTaskCode(v string) *AgvTaskCreate { _c.mutation.SetHikTaskCode(v) return _c } // SetNillableHikTaskCode sets the "hik_task_code" field if the given value is not nil. func (_c *AgvTaskCreate) SetNillableHikTaskCode(v *string) *AgvTaskCreate { if v != nil { _c.SetHikTaskCode(*v) } return _c } // SetSourceDock sets the "source_dock" field. func (_c *AgvTaskCreate) SetSourceDock(v string) *AgvTaskCreate { _c.mutation.SetSourceDock(v) return _c } // SetNillableSourceDock sets the "source_dock" field if the given value is not nil. func (_c *AgvTaskCreate) SetNillableSourceDock(v *string) *AgvTaskCreate { if v != nil { _c.SetSourceDock(*v) } return _c } // SetTargetDock sets the "target_dock" field. func (_c *AgvTaskCreate) SetTargetDock(v string) *AgvTaskCreate { _c.mutation.SetTargetDock(v) return _c } // SetNillableTargetDock sets the "target_dock" field if the given value is not nil. func (_c *AgvTaskCreate) SetNillableTargetDock(v *string) *AgvTaskCreate { if v != nil { _c.SetTargetDock(*v) } return _c } // SetMaterialsJSON sets the "materials_json" field. func (_c *AgvTaskCreate) SetMaterialsJSON(v string) *AgvTaskCreate { _c.mutation.SetMaterialsJSON(v) return _c } // SetNillableMaterialsJSON sets the "materials_json" field if the given value is not nil. func (_c *AgvTaskCreate) SetNillableMaterialsJSON(v *string) *AgvTaskCreate { if v != nil { _c.SetMaterialsJSON(*v) } return _c } // SetRelatedOutboundNo sets the "related_outbound_no" field. func (_c *AgvTaskCreate) SetRelatedOutboundNo(v string) *AgvTaskCreate { _c.mutation.SetRelatedOutboundNo(v) return _c } // SetNillableRelatedOutboundNo sets the "related_outbound_no" field if the given value is not nil. func (_c *AgvTaskCreate) SetNillableRelatedOutboundNo(v *string) *AgvTaskCreate { if v != nil { _c.SetRelatedOutboundNo(*v) } return _c } // SetStatus sets the "status" field. func (_c *AgvTaskCreate) SetStatus(v string) *AgvTaskCreate { _c.mutation.SetStatus(v) return _c } // SetNillableStatus sets the "status" field if the given value is not nil. func (_c *AgvTaskCreate) SetNillableStatus(v *string) *AgvTaskCreate { if v != nil { _c.SetStatus(*v) } return _c } // SetOperator sets the "operator" field. func (_c *AgvTaskCreate) SetOperator(v string) *AgvTaskCreate { _c.mutation.SetOperator(v) return _c } // SetNillableOperator sets the "operator" field if the given value is not nil. func (_c *AgvTaskCreate) SetNillableOperator(v *string) *AgvTaskCreate { if v != nil { _c.SetOperator(*v) } return _c } // SetDispatchedAt sets the "dispatched_at" field. func (_c *AgvTaskCreate) SetDispatchedAt(v int64) *AgvTaskCreate { _c.mutation.SetDispatchedAt(v) return _c } // SetNillableDispatchedAt sets the "dispatched_at" field if the given value is not nil. func (_c *AgvTaskCreate) SetNillableDispatchedAt(v *int64) *AgvTaskCreate { if v != nil { _c.SetDispatchedAt(*v) } return _c } // SetArrivedAt sets the "arrived_at" field. func (_c *AgvTaskCreate) SetArrivedAt(v int64) *AgvTaskCreate { _c.mutation.SetArrivedAt(v) return _c } // SetNillableArrivedAt sets the "arrived_at" field if the given value is not nil. func (_c *AgvTaskCreate) SetNillableArrivedAt(v *int64) *AgvTaskCreate { if v != nil { _c.SetArrivedAt(*v) } return _c } // SetRemark sets the "remark" field. func (_c *AgvTaskCreate) SetRemark(v string) *AgvTaskCreate { _c.mutation.SetRemark(v) return _c } // SetNillableRemark sets the "remark" field if the given value is not nil. func (_c *AgvTaskCreate) SetNillableRemark(v *string) *AgvTaskCreate { if v != nil { _c.SetRemark(*v) } return _c } // SetCreatedAt sets the "created_at" field. func (_c *AgvTaskCreate) SetCreatedAt(v int64) *AgvTaskCreate { _c.mutation.SetCreatedAt(v) return _c } // SetNillableCreatedAt sets the "created_at" field if the given value is not nil. func (_c *AgvTaskCreate) SetNillableCreatedAt(v *int64) *AgvTaskCreate { if v != nil { _c.SetCreatedAt(*v) } return _c } // Mutation returns the AgvTaskMutation object of the builder. func (_c *AgvTaskCreate) Mutation() *AgvTaskMutation { return _c.mutation } // Save creates the AgvTask in the database. func (_c *AgvTaskCreate) Save(ctx context.Context) (*AgvTask, error) { _c.defaults() return withHooks(ctx, _c.sqlSave, _c.mutation, _c.hooks) } // SaveX calls Save and panics if Save returns an error. func (_c *AgvTaskCreate) SaveX(ctx context.Context) *AgvTask { v, err := _c.Save(ctx) if err != nil { panic(err) } return v } // Exec executes the query. func (_c *AgvTaskCreate) Exec(ctx context.Context) error { _, err := _c.Save(ctx) return err } // ExecX is like Exec, but panics if an error occurs. func (_c *AgvTaskCreate) ExecX(ctx context.Context) { if err := _c.Exec(ctx); err != nil { panic(err) } } // defaults sets the default values of the builder before save. func (_c *AgvTaskCreate) defaults() { if _, ok := _c.mutation.HikTaskCode(); !ok { v := agvtask.DefaultHikTaskCode _c.mutation.SetHikTaskCode(v) } if _, ok := _c.mutation.SourceDock(); !ok { v := agvtask.DefaultSourceDock _c.mutation.SetSourceDock(v) } if _, ok := _c.mutation.TargetDock(); !ok { v := agvtask.DefaultTargetDock _c.mutation.SetTargetDock(v) } if _, ok := _c.mutation.MaterialsJSON(); !ok { v := agvtask.DefaultMaterialsJSON _c.mutation.SetMaterialsJSON(v) } if _, ok := _c.mutation.RelatedOutboundNo(); !ok { v := agvtask.DefaultRelatedOutboundNo _c.mutation.SetRelatedOutboundNo(v) } if _, ok := _c.mutation.Status(); !ok { v := agvtask.DefaultStatus _c.mutation.SetStatus(v) } if _, ok := _c.mutation.Operator(); !ok { v := agvtask.DefaultOperator _c.mutation.SetOperator(v) } if _, ok := _c.mutation.DispatchedAt(); !ok { v := agvtask.DefaultDispatchedAt _c.mutation.SetDispatchedAt(v) } if _, ok := _c.mutation.ArrivedAt(); !ok { v := agvtask.DefaultArrivedAt _c.mutation.SetArrivedAt(v) } if _, ok := _c.mutation.Remark(); !ok { v := agvtask.DefaultRemark _c.mutation.SetRemark(v) } if _, ok := _c.mutation.CreatedAt(); !ok { v := agvtask.DefaultCreatedAt() _c.mutation.SetCreatedAt(v) } } // check runs all checks and user-defined validators on the builder. func (_c *AgvTaskCreate) check() error { if _, ok := _c.mutation.TaskNo(); !ok { return &ValidationError{Name: "task_no", err: errors.New(`ent: missing required field "AgvTask.task_no"`)} } if v, ok := _c.mutation.TaskNo(); ok { if err := agvtask.TaskNoValidator(v); err != nil { return &ValidationError{Name: "task_no", err: fmt.Errorf(`ent: validator failed for field "AgvTask.task_no": %w`, err)} } } if _, ok := _c.mutation.HikTaskCode(); !ok { return &ValidationError{Name: "hik_task_code", err: errors.New(`ent: missing required field "AgvTask.hik_task_code"`)} } if v, ok := _c.mutation.HikTaskCode(); ok { if err := agvtask.HikTaskCodeValidator(v); err != nil { return &ValidationError{Name: "hik_task_code", err: fmt.Errorf(`ent: validator failed for field "AgvTask.hik_task_code": %w`, err)} } } if _, ok := _c.mutation.SourceDock(); !ok { return &ValidationError{Name: "source_dock", err: errors.New(`ent: missing required field "AgvTask.source_dock"`)} } if v, ok := _c.mutation.SourceDock(); ok { if err := agvtask.SourceDockValidator(v); err != nil { return &ValidationError{Name: "source_dock", err: fmt.Errorf(`ent: validator failed for field "AgvTask.source_dock": %w`, err)} } } if _, ok := _c.mutation.TargetDock(); !ok { return &ValidationError{Name: "target_dock", err: errors.New(`ent: missing required field "AgvTask.target_dock"`)} } if v, ok := _c.mutation.TargetDock(); ok { if err := agvtask.TargetDockValidator(v); err != nil { return &ValidationError{Name: "target_dock", err: fmt.Errorf(`ent: validator failed for field "AgvTask.target_dock": %w`, err)} } } if _, ok := _c.mutation.MaterialsJSON(); !ok { return &ValidationError{Name: "materials_json", err: errors.New(`ent: missing required field "AgvTask.materials_json"`)} } if v, ok := _c.mutation.MaterialsJSON(); ok { if err := agvtask.MaterialsJSONValidator(v); err != nil { return &ValidationError{Name: "materials_json", err: fmt.Errorf(`ent: validator failed for field "AgvTask.materials_json": %w`, err)} } } if v, ok := _c.mutation.RelatedOutboundNo(); ok { if err := agvtask.RelatedOutboundNoValidator(v); err != nil { return &ValidationError{Name: "related_outbound_no", err: fmt.Errorf(`ent: validator failed for field "AgvTask.related_outbound_no": %w`, err)} } } if _, ok := _c.mutation.Status(); !ok { return &ValidationError{Name: "status", err: errors.New(`ent: missing required field "AgvTask.status"`)} } if v, ok := _c.mutation.Status(); ok { if err := agvtask.StatusValidator(v); err != nil { return &ValidationError{Name: "status", err: fmt.Errorf(`ent: validator failed for field "AgvTask.status": %w`, err)} } } if _, ok := _c.mutation.Operator(); !ok { return &ValidationError{Name: "operator", err: errors.New(`ent: missing required field "AgvTask.operator"`)} } if v, ok := _c.mutation.Operator(); ok { if err := agvtask.OperatorValidator(v); err != nil { return &ValidationError{Name: "operator", err: fmt.Errorf(`ent: validator failed for field "AgvTask.operator": %w`, err)} } } if _, ok := _c.mutation.DispatchedAt(); !ok { return &ValidationError{Name: "dispatched_at", err: errors.New(`ent: missing required field "AgvTask.dispatched_at"`)} } if _, ok := _c.mutation.ArrivedAt(); !ok { return &ValidationError{Name: "arrived_at", err: errors.New(`ent: missing required field "AgvTask.arrived_at"`)} } if v, ok := _c.mutation.Remark(); ok { if err := agvtask.RemarkValidator(v); err != nil { return &ValidationError{Name: "remark", err: fmt.Errorf(`ent: validator failed for field "AgvTask.remark": %w`, err)} } } if _, ok := _c.mutation.CreatedAt(); !ok { return &ValidationError{Name: "created_at", err: errors.New(`ent: missing required field "AgvTask.created_at"`)} } return nil } func (_c *AgvTaskCreate) sqlSave(ctx context.Context) (*AgvTask, error) { if err := _c.check(); err != nil { return nil, err } _node, _spec := _c.createSpec() if err := sqlgraph.CreateNode(ctx, _c.driver, _spec); err != nil { if sqlgraph.IsConstraintError(err) { err = &ConstraintError{msg: err.Error(), wrap: err} } return nil, err } id := _spec.ID.Value.(int64) _node.ID = int(id) _c.mutation.id = &_node.ID _c.mutation.done = true return _node, nil } func (_c *AgvTaskCreate) createSpec() (*AgvTask, *sqlgraph.CreateSpec) { var ( _node = &AgvTask{config: _c.config} _spec = sqlgraph.NewCreateSpec(agvtask.Table, sqlgraph.NewFieldSpec(agvtask.FieldID, field.TypeInt)) ) _spec.OnConflict = _c.conflict if value, ok := _c.mutation.TaskNo(); ok { _spec.SetField(agvtask.FieldTaskNo, field.TypeString, value) _node.TaskNo = value } if value, ok := _c.mutation.HikTaskCode(); ok { _spec.SetField(agvtask.FieldHikTaskCode, field.TypeString, value) _node.HikTaskCode = value } if value, ok := _c.mutation.SourceDock(); ok { _spec.SetField(agvtask.FieldSourceDock, field.TypeString, value) _node.SourceDock = value } if value, ok := _c.mutation.TargetDock(); ok { _spec.SetField(agvtask.FieldTargetDock, field.TypeString, value) _node.TargetDock = value } if value, ok := _c.mutation.MaterialsJSON(); ok { _spec.SetField(agvtask.FieldMaterialsJSON, field.TypeString, value) _node.MaterialsJSON = value } if value, ok := _c.mutation.RelatedOutboundNo(); ok { _spec.SetField(agvtask.FieldRelatedOutboundNo, field.TypeString, value) _node.RelatedOutboundNo = value } if value, ok := _c.mutation.Status(); ok { _spec.SetField(agvtask.FieldStatus, field.TypeString, value) _node.Status = value } if value, ok := _c.mutation.Operator(); ok { _spec.SetField(agvtask.FieldOperator, field.TypeString, value) _node.Operator = value } if value, ok := _c.mutation.DispatchedAt(); ok { _spec.SetField(agvtask.FieldDispatchedAt, field.TypeInt64, value) _node.DispatchedAt = value } if value, ok := _c.mutation.ArrivedAt(); ok { _spec.SetField(agvtask.FieldArrivedAt, field.TypeInt64, value) _node.ArrivedAt = value } if value, ok := _c.mutation.Remark(); ok { _spec.SetField(agvtask.FieldRemark, field.TypeString, value) _node.Remark = value } if value, ok := _c.mutation.CreatedAt(); ok { _spec.SetField(agvtask.FieldCreatedAt, field.TypeInt64, value) _node.CreatedAt = value } return _node, _spec } // OnConflict allows configuring the `ON CONFLICT` / `ON DUPLICATE KEY` clause // of the `INSERT` statement. For example: // // client.AgvTask.Create(). // SetTaskNo(v). // OnConflict( // // Update the row with the new values // // the was proposed for insertion. // sql.ResolveWithNewValues(), // ). // // Override some of the fields with custom // // update values. // Update(func(u *ent.AgvTaskUpsert) { // SetTaskNo(v+v). // }). // Exec(ctx) func (_c *AgvTaskCreate) OnConflict(opts ...sql.ConflictOption) *AgvTaskUpsertOne { _c.conflict = opts return &AgvTaskUpsertOne{ create: _c, } } // OnConflictColumns calls `OnConflict` and configures the columns // as conflict target. Using this option is equivalent to using: // // client.AgvTask.Create(). // OnConflict(sql.ConflictColumns(columns...)). // Exec(ctx) func (_c *AgvTaskCreate) OnConflictColumns(columns ...string) *AgvTaskUpsertOne { _c.conflict = append(_c.conflict, sql.ConflictColumns(columns...)) return &AgvTaskUpsertOne{ create: _c, } } type ( // AgvTaskUpsertOne is the builder for "upsert"-ing // one AgvTask node. AgvTaskUpsertOne struct { create *AgvTaskCreate } // AgvTaskUpsert is the "OnConflict" setter. AgvTaskUpsert struct { *sql.UpdateSet } ) // SetTaskNo sets the "task_no" field. func (u *AgvTaskUpsert) SetTaskNo(v string) *AgvTaskUpsert { u.Set(agvtask.FieldTaskNo, v) return u } // UpdateTaskNo sets the "task_no" field to the value that was provided on create. func (u *AgvTaskUpsert) UpdateTaskNo() *AgvTaskUpsert { u.SetExcluded(agvtask.FieldTaskNo) return u } // SetHikTaskCode sets the "hik_task_code" field. func (u *AgvTaskUpsert) SetHikTaskCode(v string) *AgvTaskUpsert { u.Set(agvtask.FieldHikTaskCode, v) return u } // UpdateHikTaskCode sets the "hik_task_code" field to the value that was provided on create. func (u *AgvTaskUpsert) UpdateHikTaskCode() *AgvTaskUpsert { u.SetExcluded(agvtask.FieldHikTaskCode) return u } // SetSourceDock sets the "source_dock" field. func (u *AgvTaskUpsert) SetSourceDock(v string) *AgvTaskUpsert { u.Set(agvtask.FieldSourceDock, v) return u } // UpdateSourceDock sets the "source_dock" field to the value that was provided on create. func (u *AgvTaskUpsert) UpdateSourceDock() *AgvTaskUpsert { u.SetExcluded(agvtask.FieldSourceDock) return u } // SetTargetDock sets the "target_dock" field. func (u *AgvTaskUpsert) SetTargetDock(v string) *AgvTaskUpsert { u.Set(agvtask.FieldTargetDock, v) return u } // UpdateTargetDock sets the "target_dock" field to the value that was provided on create. func (u *AgvTaskUpsert) UpdateTargetDock() *AgvTaskUpsert { u.SetExcluded(agvtask.FieldTargetDock) return u } // SetMaterialsJSON sets the "materials_json" field. func (u *AgvTaskUpsert) SetMaterialsJSON(v string) *AgvTaskUpsert { u.Set(agvtask.FieldMaterialsJSON, v) return u } // UpdateMaterialsJSON sets the "materials_json" field to the value that was provided on create. func (u *AgvTaskUpsert) UpdateMaterialsJSON() *AgvTaskUpsert { u.SetExcluded(agvtask.FieldMaterialsJSON) return u } // SetRelatedOutboundNo sets the "related_outbound_no" field. func (u *AgvTaskUpsert) SetRelatedOutboundNo(v string) *AgvTaskUpsert { u.Set(agvtask.FieldRelatedOutboundNo, v) return u } // UpdateRelatedOutboundNo sets the "related_outbound_no" field to the value that was provided on create. func (u *AgvTaskUpsert) UpdateRelatedOutboundNo() *AgvTaskUpsert { u.SetExcluded(agvtask.FieldRelatedOutboundNo) return u } // ClearRelatedOutboundNo clears the value of the "related_outbound_no" field. func (u *AgvTaskUpsert) ClearRelatedOutboundNo() *AgvTaskUpsert { u.SetNull(agvtask.FieldRelatedOutboundNo) return u } // SetStatus sets the "status" field. func (u *AgvTaskUpsert) SetStatus(v string) *AgvTaskUpsert { u.Set(agvtask.FieldStatus, v) return u } // UpdateStatus sets the "status" field to the value that was provided on create. func (u *AgvTaskUpsert) UpdateStatus() *AgvTaskUpsert { u.SetExcluded(agvtask.FieldStatus) return u } // SetOperator sets the "operator" field. func (u *AgvTaskUpsert) SetOperator(v string) *AgvTaskUpsert { u.Set(agvtask.FieldOperator, v) return u } // UpdateOperator sets the "operator" field to the value that was provided on create. func (u *AgvTaskUpsert) UpdateOperator() *AgvTaskUpsert { u.SetExcluded(agvtask.FieldOperator) return u } // SetDispatchedAt sets the "dispatched_at" field. func (u *AgvTaskUpsert) SetDispatchedAt(v int64) *AgvTaskUpsert { u.Set(agvtask.FieldDispatchedAt, v) return u } // UpdateDispatchedAt sets the "dispatched_at" field to the value that was provided on create. func (u *AgvTaskUpsert) UpdateDispatchedAt() *AgvTaskUpsert { u.SetExcluded(agvtask.FieldDispatchedAt) return u } // AddDispatchedAt adds v to the "dispatched_at" field. func (u *AgvTaskUpsert) AddDispatchedAt(v int64) *AgvTaskUpsert { u.Add(agvtask.FieldDispatchedAt, v) return u } // SetArrivedAt sets the "arrived_at" field. func (u *AgvTaskUpsert) SetArrivedAt(v int64) *AgvTaskUpsert { u.Set(agvtask.FieldArrivedAt, v) return u } // UpdateArrivedAt sets the "arrived_at" field to the value that was provided on create. func (u *AgvTaskUpsert) UpdateArrivedAt() *AgvTaskUpsert { u.SetExcluded(agvtask.FieldArrivedAt) return u } // AddArrivedAt adds v to the "arrived_at" field. func (u *AgvTaskUpsert) AddArrivedAt(v int64) *AgvTaskUpsert { u.Add(agvtask.FieldArrivedAt, v) return u } // SetRemark sets the "remark" field. func (u *AgvTaskUpsert) SetRemark(v string) *AgvTaskUpsert { u.Set(agvtask.FieldRemark, v) return u } // UpdateRemark sets the "remark" field to the value that was provided on create. func (u *AgvTaskUpsert) UpdateRemark() *AgvTaskUpsert { u.SetExcluded(agvtask.FieldRemark) return u } // ClearRemark clears the value of the "remark" field. func (u *AgvTaskUpsert) ClearRemark() *AgvTaskUpsert { u.SetNull(agvtask.FieldRemark) return u } // SetCreatedAt sets the "created_at" field. func (u *AgvTaskUpsert) SetCreatedAt(v int64) *AgvTaskUpsert { u.Set(agvtask.FieldCreatedAt, v) return u } // UpdateCreatedAt sets the "created_at" field to the value that was provided on create. func (u *AgvTaskUpsert) UpdateCreatedAt() *AgvTaskUpsert { u.SetExcluded(agvtask.FieldCreatedAt) return u } // AddCreatedAt adds v to the "created_at" field. func (u *AgvTaskUpsert) AddCreatedAt(v int64) *AgvTaskUpsert { u.Add(agvtask.FieldCreatedAt, v) return u } // UpdateNewValues updates the mutable fields using the new values that were set on create. // Using this option is equivalent to using: // // client.AgvTask.Create(). // OnConflict( // sql.ResolveWithNewValues(), // ). // Exec(ctx) func (u *AgvTaskUpsertOne) UpdateNewValues() *AgvTaskUpsertOne { u.create.conflict = append(u.create.conflict, sql.ResolveWithNewValues()) return u } // Ignore sets each column to itself in case of conflict. // Using this option is equivalent to using: // // client.AgvTask.Create(). // OnConflict(sql.ResolveWithIgnore()). // Exec(ctx) func (u *AgvTaskUpsertOne) Ignore() *AgvTaskUpsertOne { u.create.conflict = append(u.create.conflict, sql.ResolveWithIgnore()) return u } // DoNothing configures the conflict_action to `DO NOTHING`. // Supported only by SQLite and PostgreSQL. func (u *AgvTaskUpsertOne) DoNothing() *AgvTaskUpsertOne { u.create.conflict = append(u.create.conflict, sql.DoNothing()) return u } // Update allows overriding fields `UPDATE` values. See the AgvTaskCreate.OnConflict // documentation for more info. func (u *AgvTaskUpsertOne) Update(set func(*AgvTaskUpsert)) *AgvTaskUpsertOne { u.create.conflict = append(u.create.conflict, sql.ResolveWith(func(update *sql.UpdateSet) { set(&AgvTaskUpsert{UpdateSet: update}) })) return u } // SetTaskNo sets the "task_no" field. func (u *AgvTaskUpsertOne) SetTaskNo(v string) *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.SetTaskNo(v) }) } // UpdateTaskNo sets the "task_no" field to the value that was provided on create. func (u *AgvTaskUpsertOne) UpdateTaskNo() *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.UpdateTaskNo() }) } // SetHikTaskCode sets the "hik_task_code" field. func (u *AgvTaskUpsertOne) SetHikTaskCode(v string) *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.SetHikTaskCode(v) }) } // UpdateHikTaskCode sets the "hik_task_code" field to the value that was provided on create. func (u *AgvTaskUpsertOne) UpdateHikTaskCode() *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.UpdateHikTaskCode() }) } // SetSourceDock sets the "source_dock" field. func (u *AgvTaskUpsertOne) SetSourceDock(v string) *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.SetSourceDock(v) }) } // UpdateSourceDock sets the "source_dock" field to the value that was provided on create. func (u *AgvTaskUpsertOne) UpdateSourceDock() *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.UpdateSourceDock() }) } // SetTargetDock sets the "target_dock" field. func (u *AgvTaskUpsertOne) SetTargetDock(v string) *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.SetTargetDock(v) }) } // UpdateTargetDock sets the "target_dock" field to the value that was provided on create. func (u *AgvTaskUpsertOne) UpdateTargetDock() *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.UpdateTargetDock() }) } // SetMaterialsJSON sets the "materials_json" field. func (u *AgvTaskUpsertOne) SetMaterialsJSON(v string) *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.SetMaterialsJSON(v) }) } // UpdateMaterialsJSON sets the "materials_json" field to the value that was provided on create. func (u *AgvTaskUpsertOne) UpdateMaterialsJSON() *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.UpdateMaterialsJSON() }) } // SetRelatedOutboundNo sets the "related_outbound_no" field. func (u *AgvTaskUpsertOne) SetRelatedOutboundNo(v string) *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.SetRelatedOutboundNo(v) }) } // UpdateRelatedOutboundNo sets the "related_outbound_no" field to the value that was provided on create. func (u *AgvTaskUpsertOne) UpdateRelatedOutboundNo() *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.UpdateRelatedOutboundNo() }) } // ClearRelatedOutboundNo clears the value of the "related_outbound_no" field. func (u *AgvTaskUpsertOne) ClearRelatedOutboundNo() *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.ClearRelatedOutboundNo() }) } // SetStatus sets the "status" field. func (u *AgvTaskUpsertOne) SetStatus(v string) *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.SetStatus(v) }) } // UpdateStatus sets the "status" field to the value that was provided on create. func (u *AgvTaskUpsertOne) UpdateStatus() *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.UpdateStatus() }) } // SetOperator sets the "operator" field. func (u *AgvTaskUpsertOne) SetOperator(v string) *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.SetOperator(v) }) } // UpdateOperator sets the "operator" field to the value that was provided on create. func (u *AgvTaskUpsertOne) UpdateOperator() *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.UpdateOperator() }) } // SetDispatchedAt sets the "dispatched_at" field. func (u *AgvTaskUpsertOne) SetDispatchedAt(v int64) *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.SetDispatchedAt(v) }) } // AddDispatchedAt adds v to the "dispatched_at" field. func (u *AgvTaskUpsertOne) AddDispatchedAt(v int64) *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.AddDispatchedAt(v) }) } // UpdateDispatchedAt sets the "dispatched_at" field to the value that was provided on create. func (u *AgvTaskUpsertOne) UpdateDispatchedAt() *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.UpdateDispatchedAt() }) } // SetArrivedAt sets the "arrived_at" field. func (u *AgvTaskUpsertOne) SetArrivedAt(v int64) *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.SetArrivedAt(v) }) } // AddArrivedAt adds v to the "arrived_at" field. func (u *AgvTaskUpsertOne) AddArrivedAt(v int64) *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.AddArrivedAt(v) }) } // UpdateArrivedAt sets the "arrived_at" field to the value that was provided on create. func (u *AgvTaskUpsertOne) UpdateArrivedAt() *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.UpdateArrivedAt() }) } // SetRemark sets the "remark" field. func (u *AgvTaskUpsertOne) SetRemark(v string) *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.SetRemark(v) }) } // UpdateRemark sets the "remark" field to the value that was provided on create. func (u *AgvTaskUpsertOne) UpdateRemark() *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.UpdateRemark() }) } // ClearRemark clears the value of the "remark" field. func (u *AgvTaskUpsertOne) ClearRemark() *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.ClearRemark() }) } // SetCreatedAt sets the "created_at" field. func (u *AgvTaskUpsertOne) SetCreatedAt(v int64) *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.SetCreatedAt(v) }) } // AddCreatedAt adds v to the "created_at" field. func (u *AgvTaskUpsertOne) AddCreatedAt(v int64) *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.AddCreatedAt(v) }) } // UpdateCreatedAt sets the "created_at" field to the value that was provided on create. func (u *AgvTaskUpsertOne) UpdateCreatedAt() *AgvTaskUpsertOne { return u.Update(func(s *AgvTaskUpsert) { s.UpdateCreatedAt() }) } // Exec executes the query. func (u *AgvTaskUpsertOne) Exec(ctx context.Context) error { if len(u.create.conflict) == 0 { return errors.New("ent: missing options for AgvTaskCreate.OnConflict") } return u.create.Exec(ctx) } // ExecX is like Exec, but panics if an error occurs. func (u *AgvTaskUpsertOne) ExecX(ctx context.Context) { if err := u.create.Exec(ctx); err != nil { panic(err) } } // Exec executes the UPSERT query and returns the inserted/updated ID. func (u *AgvTaskUpsertOne) ID(ctx context.Context) (id int, err error) { node, err := u.create.Save(ctx) if err != nil { return id, err } return node.ID, nil } // IDX is like ID, but panics if an error occurs. func (u *AgvTaskUpsertOne) IDX(ctx context.Context) int { id, err := u.ID(ctx) if err != nil { panic(err) } return id } // AgvTaskCreateBulk is the builder for creating many AgvTask entities in bulk. type AgvTaskCreateBulk struct { config err error builders []*AgvTaskCreate conflict []sql.ConflictOption } // Save creates the AgvTask entities in the database. func (_c *AgvTaskCreateBulk) Save(ctx context.Context) ([]*AgvTask, error) { if _c.err != nil { return nil, _c.err } specs := make([]*sqlgraph.CreateSpec, len(_c.builders)) nodes := make([]*AgvTask, len(_c.builders)) mutators := make([]Mutator, len(_c.builders)) for i := range _c.builders { func(i int, root context.Context) { builder := _c.builders[i] builder.defaults() var mut Mutator = MutateFunc(func(ctx context.Context, m Mutation) (Value, error) { mutation, ok := m.(*AgvTaskMutation) if !ok { return nil, fmt.Errorf("unexpected mutation type %T", m) } if err := builder.check(); err != nil { return nil, err } builder.mutation = mutation var err error nodes[i], specs[i] = builder.createSpec() if i < len(mutators)-1 { _, err = mutators[i+1].Mutate(root, _c.builders[i+1].mutation) } else { spec := &sqlgraph.BatchCreateSpec{Nodes: specs} spec.OnConflict = _c.conflict // Invoke the actual operation on the latest mutation in the chain. if err = sqlgraph.BatchCreate(ctx, _c.driver, spec); err != nil { if sqlgraph.IsConstraintError(err) { err = &ConstraintError{msg: err.Error(), wrap: err} } } } if err != nil { return nil, err } mutation.id = &nodes[i].ID if specs[i].ID.Value != nil { id := specs[i].ID.Value.(int64) nodes[i].ID = int(id) } mutation.done = true return nodes[i], nil }) for i := len(builder.hooks) - 1; i >= 0; i-- { mut = builder.hooks[i](mut) } mutators[i] = mut }(i, ctx) } if len(mutators) > 0 { if _, err := mutators[0].Mutate(ctx, _c.builders[0].mutation); err != nil { return nil, err } } return nodes, nil } // SaveX is like Save, but panics if an error occurs. func (_c *AgvTaskCreateBulk) SaveX(ctx context.Context) []*AgvTask { v, err := _c.Save(ctx) if err != nil { panic(err) } return v } // Exec executes the query. func (_c *AgvTaskCreateBulk) Exec(ctx context.Context) error { _, err := _c.Save(ctx) return err } // ExecX is like Exec, but panics if an error occurs. func (_c *AgvTaskCreateBulk) ExecX(ctx context.Context) { if err := _c.Exec(ctx); err != nil { panic(err) } } // OnConflict allows configuring the `ON CONFLICT` / `ON DUPLICATE KEY` clause // of the `INSERT` statement. For example: // // client.AgvTask.CreateBulk(builders...). // OnConflict( // // Update the row with the new values // // the was proposed for insertion. // sql.ResolveWithNewValues(), // ). // // Override some of the fields with custom // // update values. // Update(func(u *ent.AgvTaskUpsert) { // SetTaskNo(v+v). // }). // Exec(ctx) func (_c *AgvTaskCreateBulk) OnConflict(opts ...sql.ConflictOption) *AgvTaskUpsertBulk { _c.conflict = opts return &AgvTaskUpsertBulk{ create: _c, } } // OnConflictColumns calls `OnConflict` and configures the columns // as conflict target. Using this option is equivalent to using: // // client.AgvTask.Create(). // OnConflict(sql.ConflictColumns(columns...)). // Exec(ctx) func (_c *AgvTaskCreateBulk) OnConflictColumns(columns ...string) *AgvTaskUpsertBulk { _c.conflict = append(_c.conflict, sql.ConflictColumns(columns...)) return &AgvTaskUpsertBulk{ create: _c, } } // AgvTaskUpsertBulk is the builder for "upsert"-ing // a bulk of AgvTask nodes. type AgvTaskUpsertBulk struct { create *AgvTaskCreateBulk } // UpdateNewValues updates the mutable fields using the new values that // were set on create. Using this option is equivalent to using: // // client.AgvTask.Create(). // OnConflict( // sql.ResolveWithNewValues(), // ). // Exec(ctx) func (u *AgvTaskUpsertBulk) UpdateNewValues() *AgvTaskUpsertBulk { u.create.conflict = append(u.create.conflict, sql.ResolveWithNewValues()) return u } // Ignore sets each column to itself in case of conflict. // Using this option is equivalent to using: // // client.AgvTask.Create(). // OnConflict(sql.ResolveWithIgnore()). // Exec(ctx) func (u *AgvTaskUpsertBulk) Ignore() *AgvTaskUpsertBulk { u.create.conflict = append(u.create.conflict, sql.ResolveWithIgnore()) return u } // DoNothing configures the conflict_action to `DO NOTHING`. // Supported only by SQLite and PostgreSQL. func (u *AgvTaskUpsertBulk) DoNothing() *AgvTaskUpsertBulk { u.create.conflict = append(u.create.conflict, sql.DoNothing()) return u } // Update allows overriding fields `UPDATE` values. See the AgvTaskCreateBulk.OnConflict // documentation for more info. func (u *AgvTaskUpsertBulk) Update(set func(*AgvTaskUpsert)) *AgvTaskUpsertBulk { u.create.conflict = append(u.create.conflict, sql.ResolveWith(func(update *sql.UpdateSet) { set(&AgvTaskUpsert{UpdateSet: update}) })) return u } // SetTaskNo sets the "task_no" field. func (u *AgvTaskUpsertBulk) SetTaskNo(v string) *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.SetTaskNo(v) }) } // UpdateTaskNo sets the "task_no" field to the value that was provided on create. func (u *AgvTaskUpsertBulk) UpdateTaskNo() *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.UpdateTaskNo() }) } // SetHikTaskCode sets the "hik_task_code" field. func (u *AgvTaskUpsertBulk) SetHikTaskCode(v string) *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.SetHikTaskCode(v) }) } // UpdateHikTaskCode sets the "hik_task_code" field to the value that was provided on create. func (u *AgvTaskUpsertBulk) UpdateHikTaskCode() *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.UpdateHikTaskCode() }) } // SetSourceDock sets the "source_dock" field. func (u *AgvTaskUpsertBulk) SetSourceDock(v string) *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.SetSourceDock(v) }) } // UpdateSourceDock sets the "source_dock" field to the value that was provided on create. func (u *AgvTaskUpsertBulk) UpdateSourceDock() *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.UpdateSourceDock() }) } // SetTargetDock sets the "target_dock" field. func (u *AgvTaskUpsertBulk) SetTargetDock(v string) *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.SetTargetDock(v) }) } // UpdateTargetDock sets the "target_dock" field to the value that was provided on create. func (u *AgvTaskUpsertBulk) UpdateTargetDock() *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.UpdateTargetDock() }) } // SetMaterialsJSON sets the "materials_json" field. func (u *AgvTaskUpsertBulk) SetMaterialsJSON(v string) *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.SetMaterialsJSON(v) }) } // UpdateMaterialsJSON sets the "materials_json" field to the value that was provided on create. func (u *AgvTaskUpsertBulk) UpdateMaterialsJSON() *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.UpdateMaterialsJSON() }) } // SetRelatedOutboundNo sets the "related_outbound_no" field. func (u *AgvTaskUpsertBulk) SetRelatedOutboundNo(v string) *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.SetRelatedOutboundNo(v) }) } // UpdateRelatedOutboundNo sets the "related_outbound_no" field to the value that was provided on create. func (u *AgvTaskUpsertBulk) UpdateRelatedOutboundNo() *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.UpdateRelatedOutboundNo() }) } // ClearRelatedOutboundNo clears the value of the "related_outbound_no" field. func (u *AgvTaskUpsertBulk) ClearRelatedOutboundNo() *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.ClearRelatedOutboundNo() }) } // SetStatus sets the "status" field. func (u *AgvTaskUpsertBulk) SetStatus(v string) *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.SetStatus(v) }) } // UpdateStatus sets the "status" field to the value that was provided on create. func (u *AgvTaskUpsertBulk) UpdateStatus() *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.UpdateStatus() }) } // SetOperator sets the "operator" field. func (u *AgvTaskUpsertBulk) SetOperator(v string) *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.SetOperator(v) }) } // UpdateOperator sets the "operator" field to the value that was provided on create. func (u *AgvTaskUpsertBulk) UpdateOperator() *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.UpdateOperator() }) } // SetDispatchedAt sets the "dispatched_at" field. func (u *AgvTaskUpsertBulk) SetDispatchedAt(v int64) *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.SetDispatchedAt(v) }) } // AddDispatchedAt adds v to the "dispatched_at" field. func (u *AgvTaskUpsertBulk) AddDispatchedAt(v int64) *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.AddDispatchedAt(v) }) } // UpdateDispatchedAt sets the "dispatched_at" field to the value that was provided on create. func (u *AgvTaskUpsertBulk) UpdateDispatchedAt() *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.UpdateDispatchedAt() }) } // SetArrivedAt sets the "arrived_at" field. func (u *AgvTaskUpsertBulk) SetArrivedAt(v int64) *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.SetArrivedAt(v) }) } // AddArrivedAt adds v to the "arrived_at" field. func (u *AgvTaskUpsertBulk) AddArrivedAt(v int64) *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.AddArrivedAt(v) }) } // UpdateArrivedAt sets the "arrived_at" field to the value that was provided on create. func (u *AgvTaskUpsertBulk) UpdateArrivedAt() *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.UpdateArrivedAt() }) } // SetRemark sets the "remark" field. func (u *AgvTaskUpsertBulk) SetRemark(v string) *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.SetRemark(v) }) } // UpdateRemark sets the "remark" field to the value that was provided on create. func (u *AgvTaskUpsertBulk) UpdateRemark() *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.UpdateRemark() }) } // ClearRemark clears the value of the "remark" field. func (u *AgvTaskUpsertBulk) ClearRemark() *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.ClearRemark() }) } // SetCreatedAt sets the "created_at" field. func (u *AgvTaskUpsertBulk) SetCreatedAt(v int64) *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.SetCreatedAt(v) }) } // AddCreatedAt adds v to the "created_at" field. func (u *AgvTaskUpsertBulk) AddCreatedAt(v int64) *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.AddCreatedAt(v) }) } // UpdateCreatedAt sets the "created_at" field to the value that was provided on create. func (u *AgvTaskUpsertBulk) UpdateCreatedAt() *AgvTaskUpsertBulk { return u.Update(func(s *AgvTaskUpsert) { s.UpdateCreatedAt() }) } // Exec executes the query. func (u *AgvTaskUpsertBulk) Exec(ctx context.Context) error { if u.create.err != nil { return u.create.err } for i, b := range u.create.builders { if len(b.conflict) != 0 { return fmt.Errorf("ent: OnConflict was set for builder %d. Set it on the AgvTaskCreateBulk instead", i) } } if len(u.create.conflict) == 0 { return errors.New("ent: missing options for AgvTaskCreateBulk.OnConflict") } return u.create.Exec(ctx) } // ExecX is like Exec, but panics if an error occurs. func (u *AgvTaskUpsertBulk) ExecX(ctx context.Context) { if err := u.create.Exec(ctx); err != nil { panic(err) } }