mirror of
https://github.com/chaitin/MonkeyCode.git
synced 2026-02-02 06:43:23 +08:00
1122 lines
32 KiB
Go
1122 lines
32 KiB
Go
// Code generated by ent, DO NOT EDIT.
|
|
|
|
package db
|
|
|
|
import (
|
|
"context"
|
|
"errors"
|
|
"fmt"
|
|
"time"
|
|
|
|
"entgo.io/ent/dialect/sql"
|
|
"entgo.io/ent/dialect/sql/sqlgraph"
|
|
"entgo.io/ent/schema/field"
|
|
"github.com/chaitin/MonkeyCode/backend/consts"
|
|
"github.com/chaitin/MonkeyCode/backend/db/model"
|
|
"github.com/chaitin/MonkeyCode/backend/db/predicate"
|
|
"github.com/chaitin/MonkeyCode/backend/db/task"
|
|
"github.com/chaitin/MonkeyCode/backend/db/user"
|
|
"github.com/chaitin/MonkeyCode/backend/ent/types"
|
|
"github.com/google/uuid"
|
|
)
|
|
|
|
// ModelUpdate is the builder for updating Model entities.
|
|
type ModelUpdate struct {
|
|
config
|
|
hooks []Hook
|
|
mutation *ModelMutation
|
|
modifiers []func(*sql.UpdateBuilder)
|
|
}
|
|
|
|
// Where appends a list predicates to the ModelUpdate builder.
|
|
func (mu *ModelUpdate) Where(ps ...predicate.Model) *ModelUpdate {
|
|
mu.mutation.Where(ps...)
|
|
return mu
|
|
}
|
|
|
|
// SetUserID sets the "user_id" field.
|
|
func (mu *ModelUpdate) SetUserID(u uuid.UUID) *ModelUpdate {
|
|
mu.mutation.SetUserID(u)
|
|
return mu
|
|
}
|
|
|
|
// SetNillableUserID sets the "user_id" field if the given value is not nil.
|
|
func (mu *ModelUpdate) SetNillableUserID(u *uuid.UUID) *ModelUpdate {
|
|
if u != nil {
|
|
mu.SetUserID(*u)
|
|
}
|
|
return mu
|
|
}
|
|
|
|
// ClearUserID clears the value of the "user_id" field.
|
|
func (mu *ModelUpdate) ClearUserID() *ModelUpdate {
|
|
mu.mutation.ClearUserID()
|
|
return mu
|
|
}
|
|
|
|
// SetModelName sets the "model_name" field.
|
|
func (mu *ModelUpdate) SetModelName(s string) *ModelUpdate {
|
|
mu.mutation.SetModelName(s)
|
|
return mu
|
|
}
|
|
|
|
// SetNillableModelName sets the "model_name" field if the given value is not nil.
|
|
func (mu *ModelUpdate) SetNillableModelName(s *string) *ModelUpdate {
|
|
if s != nil {
|
|
mu.SetModelName(*s)
|
|
}
|
|
return mu
|
|
}
|
|
|
|
// SetModelType sets the "model_type" field.
|
|
func (mu *ModelUpdate) SetModelType(ct consts.ModelType) *ModelUpdate {
|
|
mu.mutation.SetModelType(ct)
|
|
return mu
|
|
}
|
|
|
|
// SetNillableModelType sets the "model_type" field if the given value is not nil.
|
|
func (mu *ModelUpdate) SetNillableModelType(ct *consts.ModelType) *ModelUpdate {
|
|
if ct != nil {
|
|
mu.SetModelType(*ct)
|
|
}
|
|
return mu
|
|
}
|
|
|
|
// SetShowName sets the "show_name" field.
|
|
func (mu *ModelUpdate) SetShowName(s string) *ModelUpdate {
|
|
mu.mutation.SetShowName(s)
|
|
return mu
|
|
}
|
|
|
|
// SetNillableShowName sets the "show_name" field if the given value is not nil.
|
|
func (mu *ModelUpdate) SetNillableShowName(s *string) *ModelUpdate {
|
|
if s != nil {
|
|
mu.SetShowName(*s)
|
|
}
|
|
return mu
|
|
}
|
|
|
|
// ClearShowName clears the value of the "show_name" field.
|
|
func (mu *ModelUpdate) ClearShowName() *ModelUpdate {
|
|
mu.mutation.ClearShowName()
|
|
return mu
|
|
}
|
|
|
|
// SetAPIBase sets the "api_base" field.
|
|
func (mu *ModelUpdate) SetAPIBase(s string) *ModelUpdate {
|
|
mu.mutation.SetAPIBase(s)
|
|
return mu
|
|
}
|
|
|
|
// SetNillableAPIBase sets the "api_base" field if the given value is not nil.
|
|
func (mu *ModelUpdate) SetNillableAPIBase(s *string) *ModelUpdate {
|
|
if s != nil {
|
|
mu.SetAPIBase(*s)
|
|
}
|
|
return mu
|
|
}
|
|
|
|
// SetAPIKey sets the "api_key" field.
|
|
func (mu *ModelUpdate) SetAPIKey(s string) *ModelUpdate {
|
|
mu.mutation.SetAPIKey(s)
|
|
return mu
|
|
}
|
|
|
|
// SetNillableAPIKey sets the "api_key" field if the given value is not nil.
|
|
func (mu *ModelUpdate) SetNillableAPIKey(s *string) *ModelUpdate {
|
|
if s != nil {
|
|
mu.SetAPIKey(*s)
|
|
}
|
|
return mu
|
|
}
|
|
|
|
// ClearAPIKey clears the value of the "api_key" field.
|
|
func (mu *ModelUpdate) ClearAPIKey() *ModelUpdate {
|
|
mu.mutation.ClearAPIKey()
|
|
return mu
|
|
}
|
|
|
|
// SetAPIVersion sets the "api_version" field.
|
|
func (mu *ModelUpdate) SetAPIVersion(s string) *ModelUpdate {
|
|
mu.mutation.SetAPIVersion(s)
|
|
return mu
|
|
}
|
|
|
|
// SetNillableAPIVersion sets the "api_version" field if the given value is not nil.
|
|
func (mu *ModelUpdate) SetNillableAPIVersion(s *string) *ModelUpdate {
|
|
if s != nil {
|
|
mu.SetAPIVersion(*s)
|
|
}
|
|
return mu
|
|
}
|
|
|
|
// ClearAPIVersion clears the value of the "api_version" field.
|
|
func (mu *ModelUpdate) ClearAPIVersion() *ModelUpdate {
|
|
mu.mutation.ClearAPIVersion()
|
|
return mu
|
|
}
|
|
|
|
// SetAPIHeader sets the "api_header" field.
|
|
func (mu *ModelUpdate) SetAPIHeader(s string) *ModelUpdate {
|
|
mu.mutation.SetAPIHeader(s)
|
|
return mu
|
|
}
|
|
|
|
// SetNillableAPIHeader sets the "api_header" field if the given value is not nil.
|
|
func (mu *ModelUpdate) SetNillableAPIHeader(s *string) *ModelUpdate {
|
|
if s != nil {
|
|
mu.SetAPIHeader(*s)
|
|
}
|
|
return mu
|
|
}
|
|
|
|
// ClearAPIHeader clears the value of the "api_header" field.
|
|
func (mu *ModelUpdate) ClearAPIHeader() *ModelUpdate {
|
|
mu.mutation.ClearAPIHeader()
|
|
return mu
|
|
}
|
|
|
|
// SetDescription sets the "description" field.
|
|
func (mu *ModelUpdate) SetDescription(s string) *ModelUpdate {
|
|
mu.mutation.SetDescription(s)
|
|
return mu
|
|
}
|
|
|
|
// SetNillableDescription sets the "description" field if the given value is not nil.
|
|
func (mu *ModelUpdate) SetNillableDescription(s *string) *ModelUpdate {
|
|
if s != nil {
|
|
mu.SetDescription(*s)
|
|
}
|
|
return mu
|
|
}
|
|
|
|
// ClearDescription clears the value of the "description" field.
|
|
func (mu *ModelUpdate) ClearDescription() *ModelUpdate {
|
|
mu.mutation.ClearDescription()
|
|
return mu
|
|
}
|
|
|
|
// SetIsInternal sets the "is_internal" field.
|
|
func (mu *ModelUpdate) SetIsInternal(b bool) *ModelUpdate {
|
|
mu.mutation.SetIsInternal(b)
|
|
return mu
|
|
}
|
|
|
|
// SetNillableIsInternal sets the "is_internal" field if the given value is not nil.
|
|
func (mu *ModelUpdate) SetNillableIsInternal(b *bool) *ModelUpdate {
|
|
if b != nil {
|
|
mu.SetIsInternal(*b)
|
|
}
|
|
return mu
|
|
}
|
|
|
|
// SetProvider sets the "provider" field.
|
|
func (mu *ModelUpdate) SetProvider(cp consts.ModelProvider) *ModelUpdate {
|
|
mu.mutation.SetProvider(cp)
|
|
return mu
|
|
}
|
|
|
|
// SetNillableProvider sets the "provider" field if the given value is not nil.
|
|
func (mu *ModelUpdate) SetNillableProvider(cp *consts.ModelProvider) *ModelUpdate {
|
|
if cp != nil {
|
|
mu.SetProvider(*cp)
|
|
}
|
|
return mu
|
|
}
|
|
|
|
// SetStatus sets the "status" field.
|
|
func (mu *ModelUpdate) SetStatus(cs consts.ModelStatus) *ModelUpdate {
|
|
mu.mutation.SetStatus(cs)
|
|
return mu
|
|
}
|
|
|
|
// SetNillableStatus sets the "status" field if the given value is not nil.
|
|
func (mu *ModelUpdate) SetNillableStatus(cs *consts.ModelStatus) *ModelUpdate {
|
|
if cs != nil {
|
|
mu.SetStatus(*cs)
|
|
}
|
|
return mu
|
|
}
|
|
|
|
// SetParameters sets the "parameters" field.
|
|
func (mu *ModelUpdate) SetParameters(tp *types.ModelParam) *ModelUpdate {
|
|
mu.mutation.SetParameters(tp)
|
|
return mu
|
|
}
|
|
|
|
// ClearParameters clears the value of the "parameters" field.
|
|
func (mu *ModelUpdate) ClearParameters() *ModelUpdate {
|
|
mu.mutation.ClearParameters()
|
|
return mu
|
|
}
|
|
|
|
// SetContextLength sets the "context_length" field.
|
|
func (mu *ModelUpdate) SetContextLength(i int) *ModelUpdate {
|
|
mu.mutation.ResetContextLength()
|
|
mu.mutation.SetContextLength(i)
|
|
return mu
|
|
}
|
|
|
|
// SetNillableContextLength sets the "context_length" field if the given value is not nil.
|
|
func (mu *ModelUpdate) SetNillableContextLength(i *int) *ModelUpdate {
|
|
if i != nil {
|
|
mu.SetContextLength(*i)
|
|
}
|
|
return mu
|
|
}
|
|
|
|
// AddContextLength adds i to the "context_length" field.
|
|
func (mu *ModelUpdate) AddContextLength(i int) *ModelUpdate {
|
|
mu.mutation.AddContextLength(i)
|
|
return mu
|
|
}
|
|
|
|
// ClearContextLength clears the value of the "context_length" field.
|
|
func (mu *ModelUpdate) ClearContextLength() *ModelUpdate {
|
|
mu.mutation.ClearContextLength()
|
|
return mu
|
|
}
|
|
|
|
// SetCreatedAt sets the "created_at" field.
|
|
func (mu *ModelUpdate) SetCreatedAt(t time.Time) *ModelUpdate {
|
|
mu.mutation.SetCreatedAt(t)
|
|
return mu
|
|
}
|
|
|
|
// SetNillableCreatedAt sets the "created_at" field if the given value is not nil.
|
|
func (mu *ModelUpdate) SetNillableCreatedAt(t *time.Time) *ModelUpdate {
|
|
if t != nil {
|
|
mu.SetCreatedAt(*t)
|
|
}
|
|
return mu
|
|
}
|
|
|
|
// SetUpdatedAt sets the "updated_at" field.
|
|
func (mu *ModelUpdate) SetUpdatedAt(t time.Time) *ModelUpdate {
|
|
mu.mutation.SetUpdatedAt(t)
|
|
return mu
|
|
}
|
|
|
|
// AddTaskIDs adds the "tasks" edge to the Task entity by IDs.
|
|
func (mu *ModelUpdate) AddTaskIDs(ids ...uuid.UUID) *ModelUpdate {
|
|
mu.mutation.AddTaskIDs(ids...)
|
|
return mu
|
|
}
|
|
|
|
// AddTasks adds the "tasks" edges to the Task entity.
|
|
func (mu *ModelUpdate) AddTasks(t ...*Task) *ModelUpdate {
|
|
ids := make([]uuid.UUID, len(t))
|
|
for i := range t {
|
|
ids[i] = t[i].ID
|
|
}
|
|
return mu.AddTaskIDs(ids...)
|
|
}
|
|
|
|
// SetUser sets the "user" edge to the User entity.
|
|
func (mu *ModelUpdate) SetUser(u *User) *ModelUpdate {
|
|
return mu.SetUserID(u.ID)
|
|
}
|
|
|
|
// Mutation returns the ModelMutation object of the builder.
|
|
func (mu *ModelUpdate) Mutation() *ModelMutation {
|
|
return mu.mutation
|
|
}
|
|
|
|
// ClearTasks clears all "tasks" edges to the Task entity.
|
|
func (mu *ModelUpdate) ClearTasks() *ModelUpdate {
|
|
mu.mutation.ClearTasks()
|
|
return mu
|
|
}
|
|
|
|
// RemoveTaskIDs removes the "tasks" edge to Task entities by IDs.
|
|
func (mu *ModelUpdate) RemoveTaskIDs(ids ...uuid.UUID) *ModelUpdate {
|
|
mu.mutation.RemoveTaskIDs(ids...)
|
|
return mu
|
|
}
|
|
|
|
// RemoveTasks removes "tasks" edges to Task entities.
|
|
func (mu *ModelUpdate) RemoveTasks(t ...*Task) *ModelUpdate {
|
|
ids := make([]uuid.UUID, len(t))
|
|
for i := range t {
|
|
ids[i] = t[i].ID
|
|
}
|
|
return mu.RemoveTaskIDs(ids...)
|
|
}
|
|
|
|
// ClearUser clears the "user" edge to the User entity.
|
|
func (mu *ModelUpdate) ClearUser() *ModelUpdate {
|
|
mu.mutation.ClearUser()
|
|
return mu
|
|
}
|
|
|
|
// Save executes the query and returns the number of nodes affected by the update operation.
|
|
func (mu *ModelUpdate) Save(ctx context.Context) (int, error) {
|
|
mu.defaults()
|
|
return withHooks(ctx, mu.sqlSave, mu.mutation, mu.hooks)
|
|
}
|
|
|
|
// SaveX is like Save, but panics if an error occurs.
|
|
func (mu *ModelUpdate) SaveX(ctx context.Context) int {
|
|
affected, err := mu.Save(ctx)
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
return affected
|
|
}
|
|
|
|
// Exec executes the query.
|
|
func (mu *ModelUpdate) Exec(ctx context.Context) error {
|
|
_, err := mu.Save(ctx)
|
|
return err
|
|
}
|
|
|
|
// ExecX is like Exec, but panics if an error occurs.
|
|
func (mu *ModelUpdate) ExecX(ctx context.Context) {
|
|
if err := mu.Exec(ctx); err != nil {
|
|
panic(err)
|
|
}
|
|
}
|
|
|
|
// defaults sets the default values of the builder before save.
|
|
func (mu *ModelUpdate) defaults() {
|
|
if _, ok := mu.mutation.UpdatedAt(); !ok {
|
|
v := model.UpdateDefaultUpdatedAt()
|
|
mu.mutation.SetUpdatedAt(v)
|
|
}
|
|
}
|
|
|
|
// Modify adds a statement modifier for attaching custom logic to the UPDATE statement.
|
|
func (mu *ModelUpdate) Modify(modifiers ...func(u *sql.UpdateBuilder)) *ModelUpdate {
|
|
mu.modifiers = append(mu.modifiers, modifiers...)
|
|
return mu
|
|
}
|
|
|
|
func (mu *ModelUpdate) sqlSave(ctx context.Context) (n int, err error) {
|
|
_spec := sqlgraph.NewUpdateSpec(model.Table, model.Columns, sqlgraph.NewFieldSpec(model.FieldID, field.TypeUUID))
|
|
if ps := mu.mutation.predicates; len(ps) > 0 {
|
|
_spec.Predicate = func(selector *sql.Selector) {
|
|
for i := range ps {
|
|
ps[i](selector)
|
|
}
|
|
}
|
|
}
|
|
if value, ok := mu.mutation.ModelName(); ok {
|
|
_spec.SetField(model.FieldModelName, field.TypeString, value)
|
|
}
|
|
if value, ok := mu.mutation.ModelType(); ok {
|
|
_spec.SetField(model.FieldModelType, field.TypeString, value)
|
|
}
|
|
if value, ok := mu.mutation.ShowName(); ok {
|
|
_spec.SetField(model.FieldShowName, field.TypeString, value)
|
|
}
|
|
if mu.mutation.ShowNameCleared() {
|
|
_spec.ClearField(model.FieldShowName, field.TypeString)
|
|
}
|
|
if value, ok := mu.mutation.APIBase(); ok {
|
|
_spec.SetField(model.FieldAPIBase, field.TypeString, value)
|
|
}
|
|
if value, ok := mu.mutation.APIKey(); ok {
|
|
_spec.SetField(model.FieldAPIKey, field.TypeString, value)
|
|
}
|
|
if mu.mutation.APIKeyCleared() {
|
|
_spec.ClearField(model.FieldAPIKey, field.TypeString)
|
|
}
|
|
if value, ok := mu.mutation.APIVersion(); ok {
|
|
_spec.SetField(model.FieldAPIVersion, field.TypeString, value)
|
|
}
|
|
if mu.mutation.APIVersionCleared() {
|
|
_spec.ClearField(model.FieldAPIVersion, field.TypeString)
|
|
}
|
|
if value, ok := mu.mutation.APIHeader(); ok {
|
|
_spec.SetField(model.FieldAPIHeader, field.TypeString, value)
|
|
}
|
|
if mu.mutation.APIHeaderCleared() {
|
|
_spec.ClearField(model.FieldAPIHeader, field.TypeString)
|
|
}
|
|
if value, ok := mu.mutation.Description(); ok {
|
|
_spec.SetField(model.FieldDescription, field.TypeString, value)
|
|
}
|
|
if mu.mutation.DescriptionCleared() {
|
|
_spec.ClearField(model.FieldDescription, field.TypeString)
|
|
}
|
|
if value, ok := mu.mutation.IsInternal(); ok {
|
|
_spec.SetField(model.FieldIsInternal, field.TypeBool, value)
|
|
}
|
|
if value, ok := mu.mutation.Provider(); ok {
|
|
_spec.SetField(model.FieldProvider, field.TypeString, value)
|
|
}
|
|
if value, ok := mu.mutation.Status(); ok {
|
|
_spec.SetField(model.FieldStatus, field.TypeString, value)
|
|
}
|
|
if value, ok := mu.mutation.Parameters(); ok {
|
|
_spec.SetField(model.FieldParameters, field.TypeJSON, value)
|
|
}
|
|
if mu.mutation.ParametersCleared() {
|
|
_spec.ClearField(model.FieldParameters, field.TypeJSON)
|
|
}
|
|
if value, ok := mu.mutation.ContextLength(); ok {
|
|
_spec.SetField(model.FieldContextLength, field.TypeInt, value)
|
|
}
|
|
if value, ok := mu.mutation.AddedContextLength(); ok {
|
|
_spec.AddField(model.FieldContextLength, field.TypeInt, value)
|
|
}
|
|
if mu.mutation.ContextLengthCleared() {
|
|
_spec.ClearField(model.FieldContextLength, field.TypeInt)
|
|
}
|
|
if value, ok := mu.mutation.CreatedAt(); ok {
|
|
_spec.SetField(model.FieldCreatedAt, field.TypeTime, value)
|
|
}
|
|
if value, ok := mu.mutation.UpdatedAt(); ok {
|
|
_spec.SetField(model.FieldUpdatedAt, field.TypeTime, value)
|
|
}
|
|
if mu.mutation.TasksCleared() {
|
|
edge := &sqlgraph.EdgeSpec{
|
|
Rel: sqlgraph.O2M,
|
|
Inverse: false,
|
|
Table: model.TasksTable,
|
|
Columns: []string{model.TasksColumn},
|
|
Bidi: false,
|
|
Target: &sqlgraph.EdgeTarget{
|
|
IDSpec: sqlgraph.NewFieldSpec(task.FieldID, field.TypeUUID),
|
|
},
|
|
}
|
|
_spec.Edges.Clear = append(_spec.Edges.Clear, edge)
|
|
}
|
|
if nodes := mu.mutation.RemovedTasksIDs(); len(nodes) > 0 && !mu.mutation.TasksCleared() {
|
|
edge := &sqlgraph.EdgeSpec{
|
|
Rel: sqlgraph.O2M,
|
|
Inverse: false,
|
|
Table: model.TasksTable,
|
|
Columns: []string{model.TasksColumn},
|
|
Bidi: false,
|
|
Target: &sqlgraph.EdgeTarget{
|
|
IDSpec: sqlgraph.NewFieldSpec(task.FieldID, field.TypeUUID),
|
|
},
|
|
}
|
|
for _, k := range nodes {
|
|
edge.Target.Nodes = append(edge.Target.Nodes, k)
|
|
}
|
|
_spec.Edges.Clear = append(_spec.Edges.Clear, edge)
|
|
}
|
|
if nodes := mu.mutation.TasksIDs(); len(nodes) > 0 {
|
|
edge := &sqlgraph.EdgeSpec{
|
|
Rel: sqlgraph.O2M,
|
|
Inverse: false,
|
|
Table: model.TasksTable,
|
|
Columns: []string{model.TasksColumn},
|
|
Bidi: false,
|
|
Target: &sqlgraph.EdgeTarget{
|
|
IDSpec: sqlgraph.NewFieldSpec(task.FieldID, field.TypeUUID),
|
|
},
|
|
}
|
|
for _, k := range nodes {
|
|
edge.Target.Nodes = append(edge.Target.Nodes, k)
|
|
}
|
|
_spec.Edges.Add = append(_spec.Edges.Add, edge)
|
|
}
|
|
if mu.mutation.UserCleared() {
|
|
edge := &sqlgraph.EdgeSpec{
|
|
Rel: sqlgraph.M2O,
|
|
Inverse: true,
|
|
Table: model.UserTable,
|
|
Columns: []string{model.UserColumn},
|
|
Bidi: false,
|
|
Target: &sqlgraph.EdgeTarget{
|
|
IDSpec: sqlgraph.NewFieldSpec(user.FieldID, field.TypeUUID),
|
|
},
|
|
}
|
|
_spec.Edges.Clear = append(_spec.Edges.Clear, edge)
|
|
}
|
|
if nodes := mu.mutation.UserIDs(); len(nodes) > 0 {
|
|
edge := &sqlgraph.EdgeSpec{
|
|
Rel: sqlgraph.M2O,
|
|
Inverse: true,
|
|
Table: model.UserTable,
|
|
Columns: []string{model.UserColumn},
|
|
Bidi: false,
|
|
Target: &sqlgraph.EdgeTarget{
|
|
IDSpec: sqlgraph.NewFieldSpec(user.FieldID, field.TypeUUID),
|
|
},
|
|
}
|
|
for _, k := range nodes {
|
|
edge.Target.Nodes = append(edge.Target.Nodes, k)
|
|
}
|
|
_spec.Edges.Add = append(_spec.Edges.Add, edge)
|
|
}
|
|
_spec.AddModifiers(mu.modifiers...)
|
|
if n, err = sqlgraph.UpdateNodes(ctx, mu.driver, _spec); err != nil {
|
|
if _, ok := err.(*sqlgraph.NotFoundError); ok {
|
|
err = &NotFoundError{model.Label}
|
|
} else if sqlgraph.IsConstraintError(err) {
|
|
err = &ConstraintError{msg: err.Error(), wrap: err}
|
|
}
|
|
return 0, err
|
|
}
|
|
mu.mutation.done = true
|
|
return n, nil
|
|
}
|
|
|
|
// ModelUpdateOne is the builder for updating a single Model entity.
|
|
type ModelUpdateOne struct {
|
|
config
|
|
fields []string
|
|
hooks []Hook
|
|
mutation *ModelMutation
|
|
modifiers []func(*sql.UpdateBuilder)
|
|
}
|
|
|
|
// SetUserID sets the "user_id" field.
|
|
func (muo *ModelUpdateOne) SetUserID(u uuid.UUID) *ModelUpdateOne {
|
|
muo.mutation.SetUserID(u)
|
|
return muo
|
|
}
|
|
|
|
// SetNillableUserID sets the "user_id" field if the given value is not nil.
|
|
func (muo *ModelUpdateOne) SetNillableUserID(u *uuid.UUID) *ModelUpdateOne {
|
|
if u != nil {
|
|
muo.SetUserID(*u)
|
|
}
|
|
return muo
|
|
}
|
|
|
|
// ClearUserID clears the value of the "user_id" field.
|
|
func (muo *ModelUpdateOne) ClearUserID() *ModelUpdateOne {
|
|
muo.mutation.ClearUserID()
|
|
return muo
|
|
}
|
|
|
|
// SetModelName sets the "model_name" field.
|
|
func (muo *ModelUpdateOne) SetModelName(s string) *ModelUpdateOne {
|
|
muo.mutation.SetModelName(s)
|
|
return muo
|
|
}
|
|
|
|
// SetNillableModelName sets the "model_name" field if the given value is not nil.
|
|
func (muo *ModelUpdateOne) SetNillableModelName(s *string) *ModelUpdateOne {
|
|
if s != nil {
|
|
muo.SetModelName(*s)
|
|
}
|
|
return muo
|
|
}
|
|
|
|
// SetModelType sets the "model_type" field.
|
|
func (muo *ModelUpdateOne) SetModelType(ct consts.ModelType) *ModelUpdateOne {
|
|
muo.mutation.SetModelType(ct)
|
|
return muo
|
|
}
|
|
|
|
// SetNillableModelType sets the "model_type" field if the given value is not nil.
|
|
func (muo *ModelUpdateOne) SetNillableModelType(ct *consts.ModelType) *ModelUpdateOne {
|
|
if ct != nil {
|
|
muo.SetModelType(*ct)
|
|
}
|
|
return muo
|
|
}
|
|
|
|
// SetShowName sets the "show_name" field.
|
|
func (muo *ModelUpdateOne) SetShowName(s string) *ModelUpdateOne {
|
|
muo.mutation.SetShowName(s)
|
|
return muo
|
|
}
|
|
|
|
// SetNillableShowName sets the "show_name" field if the given value is not nil.
|
|
func (muo *ModelUpdateOne) SetNillableShowName(s *string) *ModelUpdateOne {
|
|
if s != nil {
|
|
muo.SetShowName(*s)
|
|
}
|
|
return muo
|
|
}
|
|
|
|
// ClearShowName clears the value of the "show_name" field.
|
|
func (muo *ModelUpdateOne) ClearShowName() *ModelUpdateOne {
|
|
muo.mutation.ClearShowName()
|
|
return muo
|
|
}
|
|
|
|
// SetAPIBase sets the "api_base" field.
|
|
func (muo *ModelUpdateOne) SetAPIBase(s string) *ModelUpdateOne {
|
|
muo.mutation.SetAPIBase(s)
|
|
return muo
|
|
}
|
|
|
|
// SetNillableAPIBase sets the "api_base" field if the given value is not nil.
|
|
func (muo *ModelUpdateOne) SetNillableAPIBase(s *string) *ModelUpdateOne {
|
|
if s != nil {
|
|
muo.SetAPIBase(*s)
|
|
}
|
|
return muo
|
|
}
|
|
|
|
// SetAPIKey sets the "api_key" field.
|
|
func (muo *ModelUpdateOne) SetAPIKey(s string) *ModelUpdateOne {
|
|
muo.mutation.SetAPIKey(s)
|
|
return muo
|
|
}
|
|
|
|
// SetNillableAPIKey sets the "api_key" field if the given value is not nil.
|
|
func (muo *ModelUpdateOne) SetNillableAPIKey(s *string) *ModelUpdateOne {
|
|
if s != nil {
|
|
muo.SetAPIKey(*s)
|
|
}
|
|
return muo
|
|
}
|
|
|
|
// ClearAPIKey clears the value of the "api_key" field.
|
|
func (muo *ModelUpdateOne) ClearAPIKey() *ModelUpdateOne {
|
|
muo.mutation.ClearAPIKey()
|
|
return muo
|
|
}
|
|
|
|
// SetAPIVersion sets the "api_version" field.
|
|
func (muo *ModelUpdateOne) SetAPIVersion(s string) *ModelUpdateOne {
|
|
muo.mutation.SetAPIVersion(s)
|
|
return muo
|
|
}
|
|
|
|
// SetNillableAPIVersion sets the "api_version" field if the given value is not nil.
|
|
func (muo *ModelUpdateOne) SetNillableAPIVersion(s *string) *ModelUpdateOne {
|
|
if s != nil {
|
|
muo.SetAPIVersion(*s)
|
|
}
|
|
return muo
|
|
}
|
|
|
|
// ClearAPIVersion clears the value of the "api_version" field.
|
|
func (muo *ModelUpdateOne) ClearAPIVersion() *ModelUpdateOne {
|
|
muo.mutation.ClearAPIVersion()
|
|
return muo
|
|
}
|
|
|
|
// SetAPIHeader sets the "api_header" field.
|
|
func (muo *ModelUpdateOne) SetAPIHeader(s string) *ModelUpdateOne {
|
|
muo.mutation.SetAPIHeader(s)
|
|
return muo
|
|
}
|
|
|
|
// SetNillableAPIHeader sets the "api_header" field if the given value is not nil.
|
|
func (muo *ModelUpdateOne) SetNillableAPIHeader(s *string) *ModelUpdateOne {
|
|
if s != nil {
|
|
muo.SetAPIHeader(*s)
|
|
}
|
|
return muo
|
|
}
|
|
|
|
// ClearAPIHeader clears the value of the "api_header" field.
|
|
func (muo *ModelUpdateOne) ClearAPIHeader() *ModelUpdateOne {
|
|
muo.mutation.ClearAPIHeader()
|
|
return muo
|
|
}
|
|
|
|
// SetDescription sets the "description" field.
|
|
func (muo *ModelUpdateOne) SetDescription(s string) *ModelUpdateOne {
|
|
muo.mutation.SetDescription(s)
|
|
return muo
|
|
}
|
|
|
|
// SetNillableDescription sets the "description" field if the given value is not nil.
|
|
func (muo *ModelUpdateOne) SetNillableDescription(s *string) *ModelUpdateOne {
|
|
if s != nil {
|
|
muo.SetDescription(*s)
|
|
}
|
|
return muo
|
|
}
|
|
|
|
// ClearDescription clears the value of the "description" field.
|
|
func (muo *ModelUpdateOne) ClearDescription() *ModelUpdateOne {
|
|
muo.mutation.ClearDescription()
|
|
return muo
|
|
}
|
|
|
|
// SetIsInternal sets the "is_internal" field.
|
|
func (muo *ModelUpdateOne) SetIsInternal(b bool) *ModelUpdateOne {
|
|
muo.mutation.SetIsInternal(b)
|
|
return muo
|
|
}
|
|
|
|
// SetNillableIsInternal sets the "is_internal" field if the given value is not nil.
|
|
func (muo *ModelUpdateOne) SetNillableIsInternal(b *bool) *ModelUpdateOne {
|
|
if b != nil {
|
|
muo.SetIsInternal(*b)
|
|
}
|
|
return muo
|
|
}
|
|
|
|
// SetProvider sets the "provider" field.
|
|
func (muo *ModelUpdateOne) SetProvider(cp consts.ModelProvider) *ModelUpdateOne {
|
|
muo.mutation.SetProvider(cp)
|
|
return muo
|
|
}
|
|
|
|
// SetNillableProvider sets the "provider" field if the given value is not nil.
|
|
func (muo *ModelUpdateOne) SetNillableProvider(cp *consts.ModelProvider) *ModelUpdateOne {
|
|
if cp != nil {
|
|
muo.SetProvider(*cp)
|
|
}
|
|
return muo
|
|
}
|
|
|
|
// SetStatus sets the "status" field.
|
|
func (muo *ModelUpdateOne) SetStatus(cs consts.ModelStatus) *ModelUpdateOne {
|
|
muo.mutation.SetStatus(cs)
|
|
return muo
|
|
}
|
|
|
|
// SetNillableStatus sets the "status" field if the given value is not nil.
|
|
func (muo *ModelUpdateOne) SetNillableStatus(cs *consts.ModelStatus) *ModelUpdateOne {
|
|
if cs != nil {
|
|
muo.SetStatus(*cs)
|
|
}
|
|
return muo
|
|
}
|
|
|
|
// SetParameters sets the "parameters" field.
|
|
func (muo *ModelUpdateOne) SetParameters(tp *types.ModelParam) *ModelUpdateOne {
|
|
muo.mutation.SetParameters(tp)
|
|
return muo
|
|
}
|
|
|
|
// ClearParameters clears the value of the "parameters" field.
|
|
func (muo *ModelUpdateOne) ClearParameters() *ModelUpdateOne {
|
|
muo.mutation.ClearParameters()
|
|
return muo
|
|
}
|
|
|
|
// SetContextLength sets the "context_length" field.
|
|
func (muo *ModelUpdateOne) SetContextLength(i int) *ModelUpdateOne {
|
|
muo.mutation.ResetContextLength()
|
|
muo.mutation.SetContextLength(i)
|
|
return muo
|
|
}
|
|
|
|
// SetNillableContextLength sets the "context_length" field if the given value is not nil.
|
|
func (muo *ModelUpdateOne) SetNillableContextLength(i *int) *ModelUpdateOne {
|
|
if i != nil {
|
|
muo.SetContextLength(*i)
|
|
}
|
|
return muo
|
|
}
|
|
|
|
// AddContextLength adds i to the "context_length" field.
|
|
func (muo *ModelUpdateOne) AddContextLength(i int) *ModelUpdateOne {
|
|
muo.mutation.AddContextLength(i)
|
|
return muo
|
|
}
|
|
|
|
// ClearContextLength clears the value of the "context_length" field.
|
|
func (muo *ModelUpdateOne) ClearContextLength() *ModelUpdateOne {
|
|
muo.mutation.ClearContextLength()
|
|
return muo
|
|
}
|
|
|
|
// SetCreatedAt sets the "created_at" field.
|
|
func (muo *ModelUpdateOne) SetCreatedAt(t time.Time) *ModelUpdateOne {
|
|
muo.mutation.SetCreatedAt(t)
|
|
return muo
|
|
}
|
|
|
|
// SetNillableCreatedAt sets the "created_at" field if the given value is not nil.
|
|
func (muo *ModelUpdateOne) SetNillableCreatedAt(t *time.Time) *ModelUpdateOne {
|
|
if t != nil {
|
|
muo.SetCreatedAt(*t)
|
|
}
|
|
return muo
|
|
}
|
|
|
|
// SetUpdatedAt sets the "updated_at" field.
|
|
func (muo *ModelUpdateOne) SetUpdatedAt(t time.Time) *ModelUpdateOne {
|
|
muo.mutation.SetUpdatedAt(t)
|
|
return muo
|
|
}
|
|
|
|
// AddTaskIDs adds the "tasks" edge to the Task entity by IDs.
|
|
func (muo *ModelUpdateOne) AddTaskIDs(ids ...uuid.UUID) *ModelUpdateOne {
|
|
muo.mutation.AddTaskIDs(ids...)
|
|
return muo
|
|
}
|
|
|
|
// AddTasks adds the "tasks" edges to the Task entity.
|
|
func (muo *ModelUpdateOne) AddTasks(t ...*Task) *ModelUpdateOne {
|
|
ids := make([]uuid.UUID, len(t))
|
|
for i := range t {
|
|
ids[i] = t[i].ID
|
|
}
|
|
return muo.AddTaskIDs(ids...)
|
|
}
|
|
|
|
// SetUser sets the "user" edge to the User entity.
|
|
func (muo *ModelUpdateOne) SetUser(u *User) *ModelUpdateOne {
|
|
return muo.SetUserID(u.ID)
|
|
}
|
|
|
|
// Mutation returns the ModelMutation object of the builder.
|
|
func (muo *ModelUpdateOne) Mutation() *ModelMutation {
|
|
return muo.mutation
|
|
}
|
|
|
|
// ClearTasks clears all "tasks" edges to the Task entity.
|
|
func (muo *ModelUpdateOne) ClearTasks() *ModelUpdateOne {
|
|
muo.mutation.ClearTasks()
|
|
return muo
|
|
}
|
|
|
|
// RemoveTaskIDs removes the "tasks" edge to Task entities by IDs.
|
|
func (muo *ModelUpdateOne) RemoveTaskIDs(ids ...uuid.UUID) *ModelUpdateOne {
|
|
muo.mutation.RemoveTaskIDs(ids...)
|
|
return muo
|
|
}
|
|
|
|
// RemoveTasks removes "tasks" edges to Task entities.
|
|
func (muo *ModelUpdateOne) RemoveTasks(t ...*Task) *ModelUpdateOne {
|
|
ids := make([]uuid.UUID, len(t))
|
|
for i := range t {
|
|
ids[i] = t[i].ID
|
|
}
|
|
return muo.RemoveTaskIDs(ids...)
|
|
}
|
|
|
|
// ClearUser clears the "user" edge to the User entity.
|
|
func (muo *ModelUpdateOne) ClearUser() *ModelUpdateOne {
|
|
muo.mutation.ClearUser()
|
|
return muo
|
|
}
|
|
|
|
// Where appends a list predicates to the ModelUpdate builder.
|
|
func (muo *ModelUpdateOne) Where(ps ...predicate.Model) *ModelUpdateOne {
|
|
muo.mutation.Where(ps...)
|
|
return muo
|
|
}
|
|
|
|
// Select allows selecting one or more fields (columns) of the returned entity.
|
|
// The default is selecting all fields defined in the entity schema.
|
|
func (muo *ModelUpdateOne) Select(field string, fields ...string) *ModelUpdateOne {
|
|
muo.fields = append([]string{field}, fields...)
|
|
return muo
|
|
}
|
|
|
|
// Save executes the query and returns the updated Model entity.
|
|
func (muo *ModelUpdateOne) Save(ctx context.Context) (*Model, error) {
|
|
muo.defaults()
|
|
return withHooks(ctx, muo.sqlSave, muo.mutation, muo.hooks)
|
|
}
|
|
|
|
// SaveX is like Save, but panics if an error occurs.
|
|
func (muo *ModelUpdateOne) SaveX(ctx context.Context) *Model {
|
|
node, err := muo.Save(ctx)
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
return node
|
|
}
|
|
|
|
// Exec executes the query on the entity.
|
|
func (muo *ModelUpdateOne) Exec(ctx context.Context) error {
|
|
_, err := muo.Save(ctx)
|
|
return err
|
|
}
|
|
|
|
// ExecX is like Exec, but panics if an error occurs.
|
|
func (muo *ModelUpdateOne) ExecX(ctx context.Context) {
|
|
if err := muo.Exec(ctx); err != nil {
|
|
panic(err)
|
|
}
|
|
}
|
|
|
|
// defaults sets the default values of the builder before save.
|
|
func (muo *ModelUpdateOne) defaults() {
|
|
if _, ok := muo.mutation.UpdatedAt(); !ok {
|
|
v := model.UpdateDefaultUpdatedAt()
|
|
muo.mutation.SetUpdatedAt(v)
|
|
}
|
|
}
|
|
|
|
// Modify adds a statement modifier for attaching custom logic to the UPDATE statement.
|
|
func (muo *ModelUpdateOne) Modify(modifiers ...func(u *sql.UpdateBuilder)) *ModelUpdateOne {
|
|
muo.modifiers = append(muo.modifiers, modifiers...)
|
|
return muo
|
|
}
|
|
|
|
func (muo *ModelUpdateOne) sqlSave(ctx context.Context) (_node *Model, err error) {
|
|
_spec := sqlgraph.NewUpdateSpec(model.Table, model.Columns, sqlgraph.NewFieldSpec(model.FieldID, field.TypeUUID))
|
|
id, ok := muo.mutation.ID()
|
|
if !ok {
|
|
return nil, &ValidationError{Name: "id", err: errors.New(`db: missing "Model.id" for update`)}
|
|
}
|
|
_spec.Node.ID.Value = id
|
|
if fields := muo.fields; len(fields) > 0 {
|
|
_spec.Node.Columns = make([]string, 0, len(fields))
|
|
_spec.Node.Columns = append(_spec.Node.Columns, model.FieldID)
|
|
for _, f := range fields {
|
|
if !model.ValidColumn(f) {
|
|
return nil, &ValidationError{Name: f, err: fmt.Errorf("db: invalid field %q for query", f)}
|
|
}
|
|
if f != model.FieldID {
|
|
_spec.Node.Columns = append(_spec.Node.Columns, f)
|
|
}
|
|
}
|
|
}
|
|
if ps := muo.mutation.predicates; len(ps) > 0 {
|
|
_spec.Predicate = func(selector *sql.Selector) {
|
|
for i := range ps {
|
|
ps[i](selector)
|
|
}
|
|
}
|
|
}
|
|
if value, ok := muo.mutation.ModelName(); ok {
|
|
_spec.SetField(model.FieldModelName, field.TypeString, value)
|
|
}
|
|
if value, ok := muo.mutation.ModelType(); ok {
|
|
_spec.SetField(model.FieldModelType, field.TypeString, value)
|
|
}
|
|
if value, ok := muo.mutation.ShowName(); ok {
|
|
_spec.SetField(model.FieldShowName, field.TypeString, value)
|
|
}
|
|
if muo.mutation.ShowNameCleared() {
|
|
_spec.ClearField(model.FieldShowName, field.TypeString)
|
|
}
|
|
if value, ok := muo.mutation.APIBase(); ok {
|
|
_spec.SetField(model.FieldAPIBase, field.TypeString, value)
|
|
}
|
|
if value, ok := muo.mutation.APIKey(); ok {
|
|
_spec.SetField(model.FieldAPIKey, field.TypeString, value)
|
|
}
|
|
if muo.mutation.APIKeyCleared() {
|
|
_spec.ClearField(model.FieldAPIKey, field.TypeString)
|
|
}
|
|
if value, ok := muo.mutation.APIVersion(); ok {
|
|
_spec.SetField(model.FieldAPIVersion, field.TypeString, value)
|
|
}
|
|
if muo.mutation.APIVersionCleared() {
|
|
_spec.ClearField(model.FieldAPIVersion, field.TypeString)
|
|
}
|
|
if value, ok := muo.mutation.APIHeader(); ok {
|
|
_spec.SetField(model.FieldAPIHeader, field.TypeString, value)
|
|
}
|
|
if muo.mutation.APIHeaderCleared() {
|
|
_spec.ClearField(model.FieldAPIHeader, field.TypeString)
|
|
}
|
|
if value, ok := muo.mutation.Description(); ok {
|
|
_spec.SetField(model.FieldDescription, field.TypeString, value)
|
|
}
|
|
if muo.mutation.DescriptionCleared() {
|
|
_spec.ClearField(model.FieldDescription, field.TypeString)
|
|
}
|
|
if value, ok := muo.mutation.IsInternal(); ok {
|
|
_spec.SetField(model.FieldIsInternal, field.TypeBool, value)
|
|
}
|
|
if value, ok := muo.mutation.Provider(); ok {
|
|
_spec.SetField(model.FieldProvider, field.TypeString, value)
|
|
}
|
|
if value, ok := muo.mutation.Status(); ok {
|
|
_spec.SetField(model.FieldStatus, field.TypeString, value)
|
|
}
|
|
if value, ok := muo.mutation.Parameters(); ok {
|
|
_spec.SetField(model.FieldParameters, field.TypeJSON, value)
|
|
}
|
|
if muo.mutation.ParametersCleared() {
|
|
_spec.ClearField(model.FieldParameters, field.TypeJSON)
|
|
}
|
|
if value, ok := muo.mutation.ContextLength(); ok {
|
|
_spec.SetField(model.FieldContextLength, field.TypeInt, value)
|
|
}
|
|
if value, ok := muo.mutation.AddedContextLength(); ok {
|
|
_spec.AddField(model.FieldContextLength, field.TypeInt, value)
|
|
}
|
|
if muo.mutation.ContextLengthCleared() {
|
|
_spec.ClearField(model.FieldContextLength, field.TypeInt)
|
|
}
|
|
if value, ok := muo.mutation.CreatedAt(); ok {
|
|
_spec.SetField(model.FieldCreatedAt, field.TypeTime, value)
|
|
}
|
|
if value, ok := muo.mutation.UpdatedAt(); ok {
|
|
_spec.SetField(model.FieldUpdatedAt, field.TypeTime, value)
|
|
}
|
|
if muo.mutation.TasksCleared() {
|
|
edge := &sqlgraph.EdgeSpec{
|
|
Rel: sqlgraph.O2M,
|
|
Inverse: false,
|
|
Table: model.TasksTable,
|
|
Columns: []string{model.TasksColumn},
|
|
Bidi: false,
|
|
Target: &sqlgraph.EdgeTarget{
|
|
IDSpec: sqlgraph.NewFieldSpec(task.FieldID, field.TypeUUID),
|
|
},
|
|
}
|
|
_spec.Edges.Clear = append(_spec.Edges.Clear, edge)
|
|
}
|
|
if nodes := muo.mutation.RemovedTasksIDs(); len(nodes) > 0 && !muo.mutation.TasksCleared() {
|
|
edge := &sqlgraph.EdgeSpec{
|
|
Rel: sqlgraph.O2M,
|
|
Inverse: false,
|
|
Table: model.TasksTable,
|
|
Columns: []string{model.TasksColumn},
|
|
Bidi: false,
|
|
Target: &sqlgraph.EdgeTarget{
|
|
IDSpec: sqlgraph.NewFieldSpec(task.FieldID, field.TypeUUID),
|
|
},
|
|
}
|
|
for _, k := range nodes {
|
|
edge.Target.Nodes = append(edge.Target.Nodes, k)
|
|
}
|
|
_spec.Edges.Clear = append(_spec.Edges.Clear, edge)
|
|
}
|
|
if nodes := muo.mutation.TasksIDs(); len(nodes) > 0 {
|
|
edge := &sqlgraph.EdgeSpec{
|
|
Rel: sqlgraph.O2M,
|
|
Inverse: false,
|
|
Table: model.TasksTable,
|
|
Columns: []string{model.TasksColumn},
|
|
Bidi: false,
|
|
Target: &sqlgraph.EdgeTarget{
|
|
IDSpec: sqlgraph.NewFieldSpec(task.FieldID, field.TypeUUID),
|
|
},
|
|
}
|
|
for _, k := range nodes {
|
|
edge.Target.Nodes = append(edge.Target.Nodes, k)
|
|
}
|
|
_spec.Edges.Add = append(_spec.Edges.Add, edge)
|
|
}
|
|
if muo.mutation.UserCleared() {
|
|
edge := &sqlgraph.EdgeSpec{
|
|
Rel: sqlgraph.M2O,
|
|
Inverse: true,
|
|
Table: model.UserTable,
|
|
Columns: []string{model.UserColumn},
|
|
Bidi: false,
|
|
Target: &sqlgraph.EdgeTarget{
|
|
IDSpec: sqlgraph.NewFieldSpec(user.FieldID, field.TypeUUID),
|
|
},
|
|
}
|
|
_spec.Edges.Clear = append(_spec.Edges.Clear, edge)
|
|
}
|
|
if nodes := muo.mutation.UserIDs(); len(nodes) > 0 {
|
|
edge := &sqlgraph.EdgeSpec{
|
|
Rel: sqlgraph.M2O,
|
|
Inverse: true,
|
|
Table: model.UserTable,
|
|
Columns: []string{model.UserColumn},
|
|
Bidi: false,
|
|
Target: &sqlgraph.EdgeTarget{
|
|
IDSpec: sqlgraph.NewFieldSpec(user.FieldID, field.TypeUUID),
|
|
},
|
|
}
|
|
for _, k := range nodes {
|
|
edge.Target.Nodes = append(edge.Target.Nodes, k)
|
|
}
|
|
_spec.Edges.Add = append(_spec.Edges.Add, edge)
|
|
}
|
|
_spec.AddModifiers(muo.modifiers...)
|
|
_node = &Model{config: muo.config}
|
|
_spec.Assign = _node.assignValues
|
|
_spec.ScanValues = _node.scanValues
|
|
if err = sqlgraph.UpdateNode(ctx, muo.driver, _spec); err != nil {
|
|
if _, ok := err.(*sqlgraph.NotFoundError); ok {
|
|
err = &NotFoundError{model.Label}
|
|
} else if sqlgraph.IsConstraintError(err) {
|
|
err = &ConstraintError{msg: err.Error(), wrap: err}
|
|
}
|
|
return nil, err
|
|
}
|
|
muo.mutation.done = true
|
|
return _node, nil
|
|
}
|