diff --git a/backend/ent/migrate/schema.go b/backend/ent/migrate/schema.go index acdd0d18..c4f3af5e 100644 --- a/backend/ent/migrate/schema.go +++ b/backend/ent/migrate/schema.go @@ -716,6 +716,7 @@ var ( {Name: "id", Type: field.TypeInt64, Increment: true}, {Name: "request_id", Type: field.TypeString, Size: 64}, {Name: "model", Type: field.TypeString, Size: 100}, + {Name: "requested_model", Type: field.TypeString, Nullable: true, Size: 100}, {Name: "upstream_model", Type: field.TypeString, Nullable: true, Size: 100}, {Name: "input_tokens", Type: field.TypeInt, Default: 0}, {Name: "output_tokens", Type: field.TypeInt, Default: 0}, @@ -756,31 +757,31 @@ var ( ForeignKeys: []*schema.ForeignKey{ { Symbol: "usage_logs_api_keys_usage_logs", - Columns: []*schema.Column{UsageLogsColumns[29]}, + Columns: []*schema.Column{UsageLogsColumns[30]}, RefColumns: []*schema.Column{APIKeysColumns[0]}, OnDelete: schema.NoAction, }, { Symbol: "usage_logs_accounts_usage_logs", - Columns: []*schema.Column{UsageLogsColumns[30]}, + Columns: []*schema.Column{UsageLogsColumns[31]}, RefColumns: []*schema.Column{AccountsColumns[0]}, OnDelete: schema.NoAction, }, { Symbol: "usage_logs_groups_usage_logs", - Columns: []*schema.Column{UsageLogsColumns[31]}, + Columns: []*schema.Column{UsageLogsColumns[32]}, RefColumns: []*schema.Column{GroupsColumns[0]}, OnDelete: schema.SetNull, }, { Symbol: "usage_logs_users_usage_logs", - Columns: []*schema.Column{UsageLogsColumns[32]}, + Columns: []*schema.Column{UsageLogsColumns[33]}, RefColumns: []*schema.Column{UsersColumns[0]}, OnDelete: schema.NoAction, }, { Symbol: "usage_logs_user_subscriptions_usage_logs", - Columns: []*schema.Column{UsageLogsColumns[33]}, + Columns: []*schema.Column{UsageLogsColumns[34]}, RefColumns: []*schema.Column{UserSubscriptionsColumns[0]}, OnDelete: schema.SetNull, }, @@ -789,38 +790,43 @@ var ( { Name: "usagelog_user_id", Unique: false, - Columns: []*schema.Column{UsageLogsColumns[32]}, + Columns: []*schema.Column{UsageLogsColumns[33]}, }, { Name: "usagelog_api_key_id", Unique: false, - Columns: []*schema.Column{UsageLogsColumns[29]}, + Columns: []*schema.Column{UsageLogsColumns[30]}, }, { Name: "usagelog_account_id", Unique: false, - Columns: []*schema.Column{UsageLogsColumns[30]}, + Columns: []*schema.Column{UsageLogsColumns[31]}, }, { Name: "usagelog_group_id", Unique: false, - Columns: []*schema.Column{UsageLogsColumns[31]}, + Columns: []*schema.Column{UsageLogsColumns[32]}, }, { Name: "usagelog_subscription_id", Unique: false, - Columns: []*schema.Column{UsageLogsColumns[33]}, + Columns: []*schema.Column{UsageLogsColumns[34]}, }, { Name: "usagelog_created_at", Unique: false, - Columns: []*schema.Column{UsageLogsColumns[28]}, + Columns: []*schema.Column{UsageLogsColumns[29]}, }, { Name: "usagelog_model", Unique: false, Columns: []*schema.Column{UsageLogsColumns[2]}, }, + { + Name: "usagelog_requested_model", + Unique: false, + Columns: []*schema.Column{UsageLogsColumns[3]}, + }, { Name: "usagelog_request_id", Unique: false, @@ -829,17 +835,17 @@ var ( { Name: "usagelog_user_id_created_at", Unique: false, - Columns: []*schema.Column{UsageLogsColumns[32], UsageLogsColumns[28]}, + Columns: []*schema.Column{UsageLogsColumns[33], UsageLogsColumns[29]}, }, { Name: "usagelog_api_key_id_created_at", Unique: false, - Columns: []*schema.Column{UsageLogsColumns[29], UsageLogsColumns[28]}, + Columns: []*schema.Column{UsageLogsColumns[30], UsageLogsColumns[29]}, }, { Name: "usagelog_group_id_created_at", Unique: false, - Columns: []*schema.Column{UsageLogsColumns[31], UsageLogsColumns[28]}, + Columns: []*schema.Column{UsageLogsColumns[32], UsageLogsColumns[29]}, }, }, } diff --git a/backend/ent/mutation.go b/backend/ent/mutation.go index ff58fa9e..10f7afe4 100644 --- a/backend/ent/mutation.go +++ b/backend/ent/mutation.go @@ -18239,6 +18239,7 @@ type UsageLogMutation struct { id *int64 request_id *string model *string + requested_model *string upstream_model *string input_tokens *int addinput_tokens *int @@ -18577,6 +18578,55 @@ func (m *UsageLogMutation) ResetModel() { m.model = nil } +// SetRequestedModel sets the "requested_model" field. +func (m *UsageLogMutation) SetRequestedModel(s string) { + m.requested_model = &s +} + +// RequestedModel returns the value of the "requested_model" field in the mutation. +func (m *UsageLogMutation) RequestedModel() (r string, exists bool) { + v := m.requested_model + if v == nil { + return + } + return *v, true +} + +// OldRequestedModel returns the old "requested_model" field's value of the UsageLog entity. +// If the UsageLog object wasn't provided to the builder, the object is fetched from the database. +// An error is returned if the mutation operation is not UpdateOne, or the database query fails. +func (m *UsageLogMutation) OldRequestedModel(ctx context.Context) (v *string, err error) { + if !m.op.Is(OpUpdateOne) { + return v, errors.New("OldRequestedModel is only allowed on UpdateOne operations") + } + if m.id == nil || m.oldValue == nil { + return v, errors.New("OldRequestedModel requires an ID field in the mutation") + } + oldValue, err := m.oldValue(ctx) + if err != nil { + return v, fmt.Errorf("querying old value for OldRequestedModel: %w", err) + } + return oldValue.RequestedModel, nil +} + +// ClearRequestedModel clears the value of the "requested_model" field. +func (m *UsageLogMutation) ClearRequestedModel() { + m.requested_model = nil + m.clearedFields[usagelog.FieldRequestedModel] = struct{}{} +} + +// RequestedModelCleared returns if the "requested_model" field was cleared in this mutation. +func (m *UsageLogMutation) RequestedModelCleared() bool { + _, ok := m.clearedFields[usagelog.FieldRequestedModel] + return ok +} + +// ResetRequestedModel resets all changes to the "requested_model" field. +func (m *UsageLogMutation) ResetRequestedModel() { + m.requested_model = nil + delete(m.clearedFields, usagelog.FieldRequestedModel) +} + // SetUpstreamModel sets the "upstream_model" field. func (m *UsageLogMutation) SetUpstreamModel(s string) { m.upstream_model = &s @@ -20247,7 +20297,7 @@ func (m *UsageLogMutation) Type() string { // order to get all numeric fields that were incremented/decremented, call // AddedFields(). func (m *UsageLogMutation) Fields() []string { - fields := make([]string, 0, 33) + fields := make([]string, 0, 34) if m.user != nil { fields = append(fields, usagelog.FieldUserID) } @@ -20263,6 +20313,9 @@ func (m *UsageLogMutation) Fields() []string { if m.model != nil { fields = append(fields, usagelog.FieldModel) } + if m.requested_model != nil { + fields = append(fields, usagelog.FieldRequestedModel) + } if m.upstream_model != nil { fields = append(fields, usagelog.FieldUpstreamModel) } @@ -20365,6 +20418,8 @@ func (m *UsageLogMutation) Field(name string) (ent.Value, bool) { return m.RequestID() case usagelog.FieldModel: return m.Model() + case usagelog.FieldRequestedModel: + return m.RequestedModel() case usagelog.FieldUpstreamModel: return m.UpstreamModel() case usagelog.FieldGroupID: @@ -20440,6 +20495,8 @@ func (m *UsageLogMutation) OldField(ctx context.Context, name string) (ent.Value return m.OldRequestID(ctx) case usagelog.FieldModel: return m.OldModel(ctx) + case usagelog.FieldRequestedModel: + return m.OldRequestedModel(ctx) case usagelog.FieldUpstreamModel: return m.OldUpstreamModel(ctx) case usagelog.FieldGroupID: @@ -20540,6 +20597,13 @@ func (m *UsageLogMutation) SetField(name string, value ent.Value) error { } m.SetModel(v) return nil + case usagelog.FieldRequestedModel: + v, ok := value.(string) + if !ok { + return fmt.Errorf("unexpected type %T for field %s", value, name) + } + m.SetRequestedModel(v) + return nil case usagelog.FieldUpstreamModel: v, ok := value.(string) if !ok { @@ -20985,6 +21049,9 @@ func (m *UsageLogMutation) AddField(name string, value ent.Value) error { // mutation. func (m *UsageLogMutation) ClearedFields() []string { var fields []string + if m.FieldCleared(usagelog.FieldRequestedModel) { + fields = append(fields, usagelog.FieldRequestedModel) + } if m.FieldCleared(usagelog.FieldUpstreamModel) { fields = append(fields, usagelog.FieldUpstreamModel) } @@ -21029,6 +21096,9 @@ func (m *UsageLogMutation) FieldCleared(name string) bool { // error if the field is not defined in the schema. func (m *UsageLogMutation) ClearField(name string) error { switch name { + case usagelog.FieldRequestedModel: + m.ClearRequestedModel() + return nil case usagelog.FieldUpstreamModel: m.ClearUpstreamModel() return nil @@ -21082,6 +21152,9 @@ func (m *UsageLogMutation) ResetField(name string) error { case usagelog.FieldModel: m.ResetModel() return nil + case usagelog.FieldRequestedModel: + m.ResetRequestedModel() + return nil case usagelog.FieldUpstreamModel: m.ResetUpstreamModel() return nil diff --git a/backend/ent/runtime/runtime.go b/backend/ent/runtime/runtime.go index 2401e553..19c58d76 100644 --- a/backend/ent/runtime/runtime.go +++ b/backend/ent/runtime/runtime.go @@ -821,96 +821,100 @@ func init() { return nil } }() + // usagelogDescRequestedModel is the schema descriptor for requested_model field. + usagelogDescRequestedModel := usagelogFields[5].Descriptor() + // usagelog.RequestedModelValidator is a validator for the "requested_model" field. It is called by the builders before save. + usagelog.RequestedModelValidator = usagelogDescRequestedModel.Validators[0].(func(string) error) // usagelogDescUpstreamModel is the schema descriptor for upstream_model field. - usagelogDescUpstreamModel := usagelogFields[5].Descriptor() + usagelogDescUpstreamModel := usagelogFields[6].Descriptor() // usagelog.UpstreamModelValidator is a validator for the "upstream_model" field. It is called by the builders before save. usagelog.UpstreamModelValidator = usagelogDescUpstreamModel.Validators[0].(func(string) error) // usagelogDescInputTokens is the schema descriptor for input_tokens field. - usagelogDescInputTokens := usagelogFields[8].Descriptor() + usagelogDescInputTokens := usagelogFields[9].Descriptor() // usagelog.DefaultInputTokens holds the default value on creation for the input_tokens field. usagelog.DefaultInputTokens = usagelogDescInputTokens.Default.(int) // usagelogDescOutputTokens is the schema descriptor for output_tokens field. - usagelogDescOutputTokens := usagelogFields[9].Descriptor() + usagelogDescOutputTokens := usagelogFields[10].Descriptor() // usagelog.DefaultOutputTokens holds the default value on creation for the output_tokens field. usagelog.DefaultOutputTokens = usagelogDescOutputTokens.Default.(int) // usagelogDescCacheCreationTokens is the schema descriptor for cache_creation_tokens field. - usagelogDescCacheCreationTokens := usagelogFields[10].Descriptor() + usagelogDescCacheCreationTokens := usagelogFields[11].Descriptor() // usagelog.DefaultCacheCreationTokens holds the default value on creation for the cache_creation_tokens field. usagelog.DefaultCacheCreationTokens = usagelogDescCacheCreationTokens.Default.(int) // usagelogDescCacheReadTokens is the schema descriptor for cache_read_tokens field. - usagelogDescCacheReadTokens := usagelogFields[11].Descriptor() + usagelogDescCacheReadTokens := usagelogFields[12].Descriptor() // usagelog.DefaultCacheReadTokens holds the default value on creation for the cache_read_tokens field. usagelog.DefaultCacheReadTokens = usagelogDescCacheReadTokens.Default.(int) // usagelogDescCacheCreation5mTokens is the schema descriptor for cache_creation_5m_tokens field. - usagelogDescCacheCreation5mTokens := usagelogFields[12].Descriptor() + usagelogDescCacheCreation5mTokens := usagelogFields[13].Descriptor() // usagelog.DefaultCacheCreation5mTokens holds the default value on creation for the cache_creation_5m_tokens field. usagelog.DefaultCacheCreation5mTokens = usagelogDescCacheCreation5mTokens.Default.(int) // usagelogDescCacheCreation1hTokens is the schema descriptor for cache_creation_1h_tokens field. - usagelogDescCacheCreation1hTokens := usagelogFields[13].Descriptor() + usagelogDescCacheCreation1hTokens := usagelogFields[14].Descriptor() // usagelog.DefaultCacheCreation1hTokens holds the default value on creation for the cache_creation_1h_tokens field. usagelog.DefaultCacheCreation1hTokens = usagelogDescCacheCreation1hTokens.Default.(int) // usagelogDescInputCost is the schema descriptor for input_cost field. - usagelogDescInputCost := usagelogFields[14].Descriptor() + usagelogDescInputCost := usagelogFields[15].Descriptor() // usagelog.DefaultInputCost holds the default value on creation for the input_cost field. usagelog.DefaultInputCost = usagelogDescInputCost.Default.(float64) // usagelogDescOutputCost is the schema descriptor for output_cost field. - usagelogDescOutputCost := usagelogFields[15].Descriptor() + usagelogDescOutputCost := usagelogFields[16].Descriptor() // usagelog.DefaultOutputCost holds the default value on creation for the output_cost field. usagelog.DefaultOutputCost = usagelogDescOutputCost.Default.(float64) // usagelogDescCacheCreationCost is the schema descriptor for cache_creation_cost field. - usagelogDescCacheCreationCost := usagelogFields[16].Descriptor() + usagelogDescCacheCreationCost := usagelogFields[17].Descriptor() // usagelog.DefaultCacheCreationCost holds the default value on creation for the cache_creation_cost field. usagelog.DefaultCacheCreationCost = usagelogDescCacheCreationCost.Default.(float64) // usagelogDescCacheReadCost is the schema descriptor for cache_read_cost field. - usagelogDescCacheReadCost := usagelogFields[17].Descriptor() + usagelogDescCacheReadCost := usagelogFields[18].Descriptor() // usagelog.DefaultCacheReadCost holds the default value on creation for the cache_read_cost field. usagelog.DefaultCacheReadCost = usagelogDescCacheReadCost.Default.(float64) // usagelogDescTotalCost is the schema descriptor for total_cost field. - usagelogDescTotalCost := usagelogFields[18].Descriptor() + usagelogDescTotalCost := usagelogFields[19].Descriptor() // usagelog.DefaultTotalCost holds the default value on creation for the total_cost field. usagelog.DefaultTotalCost = usagelogDescTotalCost.Default.(float64) // usagelogDescActualCost is the schema descriptor for actual_cost field. - usagelogDescActualCost := usagelogFields[19].Descriptor() + usagelogDescActualCost := usagelogFields[20].Descriptor() // usagelog.DefaultActualCost holds the default value on creation for the actual_cost field. usagelog.DefaultActualCost = usagelogDescActualCost.Default.(float64) // usagelogDescRateMultiplier is the schema descriptor for rate_multiplier field. - usagelogDescRateMultiplier := usagelogFields[20].Descriptor() + usagelogDescRateMultiplier := usagelogFields[21].Descriptor() // usagelog.DefaultRateMultiplier holds the default value on creation for the rate_multiplier field. usagelog.DefaultRateMultiplier = usagelogDescRateMultiplier.Default.(float64) // usagelogDescBillingType is the schema descriptor for billing_type field. - usagelogDescBillingType := usagelogFields[22].Descriptor() + usagelogDescBillingType := usagelogFields[23].Descriptor() // usagelog.DefaultBillingType holds the default value on creation for the billing_type field. usagelog.DefaultBillingType = usagelogDescBillingType.Default.(int8) // usagelogDescStream is the schema descriptor for stream field. - usagelogDescStream := usagelogFields[23].Descriptor() + usagelogDescStream := usagelogFields[24].Descriptor() // usagelog.DefaultStream holds the default value on creation for the stream field. usagelog.DefaultStream = usagelogDescStream.Default.(bool) // usagelogDescUserAgent is the schema descriptor for user_agent field. - usagelogDescUserAgent := usagelogFields[26].Descriptor() + usagelogDescUserAgent := usagelogFields[27].Descriptor() // usagelog.UserAgentValidator is a validator for the "user_agent" field. It is called by the builders before save. usagelog.UserAgentValidator = usagelogDescUserAgent.Validators[0].(func(string) error) // usagelogDescIPAddress is the schema descriptor for ip_address field. - usagelogDescIPAddress := usagelogFields[27].Descriptor() + usagelogDescIPAddress := usagelogFields[28].Descriptor() // usagelog.IPAddressValidator is a validator for the "ip_address" field. It is called by the builders before save. usagelog.IPAddressValidator = usagelogDescIPAddress.Validators[0].(func(string) error) // usagelogDescImageCount is the schema descriptor for image_count field. - usagelogDescImageCount := usagelogFields[28].Descriptor() + usagelogDescImageCount := usagelogFields[29].Descriptor() // usagelog.DefaultImageCount holds the default value on creation for the image_count field. usagelog.DefaultImageCount = usagelogDescImageCount.Default.(int) // usagelogDescImageSize is the schema descriptor for image_size field. - usagelogDescImageSize := usagelogFields[29].Descriptor() + usagelogDescImageSize := usagelogFields[30].Descriptor() // usagelog.ImageSizeValidator is a validator for the "image_size" field. It is called by the builders before save. usagelog.ImageSizeValidator = usagelogDescImageSize.Validators[0].(func(string) error) // usagelogDescMediaType is the schema descriptor for media_type field. - usagelogDescMediaType := usagelogFields[30].Descriptor() + usagelogDescMediaType := usagelogFields[31].Descriptor() // usagelog.MediaTypeValidator is a validator for the "media_type" field. It is called by the builders before save. usagelog.MediaTypeValidator = usagelogDescMediaType.Validators[0].(func(string) error) // usagelogDescCacheTTLOverridden is the schema descriptor for cache_ttl_overridden field. - usagelogDescCacheTTLOverridden := usagelogFields[31].Descriptor() + usagelogDescCacheTTLOverridden := usagelogFields[32].Descriptor() // usagelog.DefaultCacheTTLOverridden holds the default value on creation for the cache_ttl_overridden field. usagelog.DefaultCacheTTLOverridden = usagelogDescCacheTTLOverridden.Default.(bool) // usagelogDescCreatedAt is the schema descriptor for created_at field. - usagelogDescCreatedAt := usagelogFields[32].Descriptor() + usagelogDescCreatedAt := usagelogFields[33].Descriptor() // usagelog.DefaultCreatedAt holds the default value on creation for the created_at field. usagelog.DefaultCreatedAt = usagelogDescCreatedAt.Default.(func() time.Time) userMixin := schema.User{}.Mixin() diff --git a/backend/ent/usagelog.go b/backend/ent/usagelog.go index 014851c9..fb4ee1c5 100644 --- a/backend/ent/usagelog.go +++ b/backend/ent/usagelog.go @@ -32,6 +32,8 @@ type UsageLog struct { RequestID string `json:"request_id,omitempty"` // Model holds the value of the "model" field. Model string `json:"model,omitempty"` + // RequestedModel holds the value of the "requested_model" field. + RequestedModel *string `json:"requested_model,omitempty"` // UpstreamModel holds the value of the "upstream_model" field. UpstreamModel *string `json:"upstream_model,omitempty"` // GroupID holds the value of the "group_id" field. @@ -177,7 +179,7 @@ func (*UsageLog) scanValues(columns []string) ([]any, error) { values[i] = new(sql.NullFloat64) case usagelog.FieldID, usagelog.FieldUserID, usagelog.FieldAPIKeyID, usagelog.FieldAccountID, usagelog.FieldGroupID, usagelog.FieldSubscriptionID, usagelog.FieldInputTokens, usagelog.FieldOutputTokens, usagelog.FieldCacheCreationTokens, usagelog.FieldCacheReadTokens, usagelog.FieldCacheCreation5mTokens, usagelog.FieldCacheCreation1hTokens, usagelog.FieldBillingType, usagelog.FieldDurationMs, usagelog.FieldFirstTokenMs, usagelog.FieldImageCount: values[i] = new(sql.NullInt64) - case usagelog.FieldRequestID, usagelog.FieldModel, usagelog.FieldUpstreamModel, usagelog.FieldUserAgent, usagelog.FieldIPAddress, usagelog.FieldImageSize, usagelog.FieldMediaType: + case usagelog.FieldRequestID, usagelog.FieldModel, usagelog.FieldRequestedModel, usagelog.FieldUpstreamModel, usagelog.FieldUserAgent, usagelog.FieldIPAddress, usagelog.FieldImageSize, usagelog.FieldMediaType: values[i] = new(sql.NullString) case usagelog.FieldCreatedAt: values[i] = new(sql.NullTime) @@ -232,6 +234,13 @@ func (_m *UsageLog) assignValues(columns []string, values []any) error { } else if value.Valid { _m.Model = value.String } + case usagelog.FieldRequestedModel: + if value, ok := values[i].(*sql.NullString); !ok { + return fmt.Errorf("unexpected type %T for field requested_model", values[i]) + } else if value.Valid { + _m.RequestedModel = new(string) + *_m.RequestedModel = value.String + } case usagelog.FieldUpstreamModel: if value, ok := values[i].(*sql.NullString); !ok { return fmt.Errorf("unexpected type %T for field upstream_model", values[i]) @@ -486,6 +495,11 @@ func (_m *UsageLog) String() string { builder.WriteString("model=") builder.WriteString(_m.Model) builder.WriteString(", ") + if v := _m.RequestedModel; v != nil { + builder.WriteString("requested_model=") + builder.WriteString(*v) + } + builder.WriteString(", ") if v := _m.UpstreamModel; v != nil { builder.WriteString("upstream_model=") builder.WriteString(*v) diff --git a/backend/ent/usagelog/usagelog.go b/backend/ent/usagelog/usagelog.go index 789407e7..b534f193 100644 --- a/backend/ent/usagelog/usagelog.go +++ b/backend/ent/usagelog/usagelog.go @@ -24,6 +24,8 @@ const ( FieldRequestID = "request_id" // FieldModel holds the string denoting the model field in the database. FieldModel = "model" + // FieldRequestedModel holds the string denoting the requested_model field in the database. + FieldRequestedModel = "requested_model" // FieldUpstreamModel holds the string denoting the upstream_model field in the database. FieldUpstreamModel = "upstream_model" // FieldGroupID holds the string denoting the group_id field in the database. @@ -137,6 +139,7 @@ var Columns = []string{ FieldAccountID, FieldRequestID, FieldModel, + FieldRequestedModel, FieldUpstreamModel, FieldGroupID, FieldSubscriptionID, @@ -182,6 +185,8 @@ var ( RequestIDValidator func(string) error // ModelValidator is a validator for the "model" field. It is called by the builders before save. ModelValidator func(string) error + // RequestedModelValidator is a validator for the "requested_model" field. It is called by the builders before save. + RequestedModelValidator func(string) error // UpstreamModelValidator is a validator for the "upstream_model" field. It is called by the builders before save. UpstreamModelValidator func(string) error // DefaultInputTokens holds the default value on creation for the "input_tokens" field. @@ -263,6 +268,11 @@ func ByModel(opts ...sql.OrderTermOption) OrderOption { return sql.OrderByField(FieldModel, opts...).ToFunc() } +// ByRequestedModel orders the results by the requested_model field. +func ByRequestedModel(opts ...sql.OrderTermOption) OrderOption { + return sql.OrderByField(FieldRequestedModel, opts...).ToFunc() +} + // ByUpstreamModel orders the results by the upstream_model field. func ByUpstreamModel(opts ...sql.OrderTermOption) OrderOption { return sql.OrderByField(FieldUpstreamModel, opts...).ToFunc() diff --git a/backend/ent/usagelog/where.go b/backend/ent/usagelog/where.go index 5f341976..f95bceb7 100644 --- a/backend/ent/usagelog/where.go +++ b/backend/ent/usagelog/where.go @@ -80,6 +80,11 @@ func Model(v string) predicate.UsageLog { return predicate.UsageLog(sql.FieldEQ(FieldModel, v)) } +// RequestedModel applies equality check predicate on the "requested_model" field. It's identical to RequestedModelEQ. +func RequestedModel(v string) predicate.UsageLog { + return predicate.UsageLog(sql.FieldEQ(FieldRequestedModel, v)) +} + // UpstreamModel applies equality check predicate on the "upstream_model" field. It's identical to UpstreamModelEQ. func UpstreamModel(v string) predicate.UsageLog { return predicate.UsageLog(sql.FieldEQ(FieldUpstreamModel, v)) @@ -410,6 +415,81 @@ func ModelContainsFold(v string) predicate.UsageLog { return predicate.UsageLog(sql.FieldContainsFold(FieldModel, v)) } +// RequestedModelEQ applies the EQ predicate on the "requested_model" field. +func RequestedModelEQ(v string) predicate.UsageLog { + return predicate.UsageLog(sql.FieldEQ(FieldRequestedModel, v)) +} + +// RequestedModelNEQ applies the NEQ predicate on the "requested_model" field. +func RequestedModelNEQ(v string) predicate.UsageLog { + return predicate.UsageLog(sql.FieldNEQ(FieldRequestedModel, v)) +} + +// RequestedModelIn applies the In predicate on the "requested_model" field. +func RequestedModelIn(vs ...string) predicate.UsageLog { + return predicate.UsageLog(sql.FieldIn(FieldRequestedModel, vs...)) +} + +// RequestedModelNotIn applies the NotIn predicate on the "requested_model" field. +func RequestedModelNotIn(vs ...string) predicate.UsageLog { + return predicate.UsageLog(sql.FieldNotIn(FieldRequestedModel, vs...)) +} + +// RequestedModelGT applies the GT predicate on the "requested_model" field. +func RequestedModelGT(v string) predicate.UsageLog { + return predicate.UsageLog(sql.FieldGT(FieldRequestedModel, v)) +} + +// RequestedModelGTE applies the GTE predicate on the "requested_model" field. +func RequestedModelGTE(v string) predicate.UsageLog { + return predicate.UsageLog(sql.FieldGTE(FieldRequestedModel, v)) +} + +// RequestedModelLT applies the LT predicate on the "requested_model" field. +func RequestedModelLT(v string) predicate.UsageLog { + return predicate.UsageLog(sql.FieldLT(FieldRequestedModel, v)) +} + +// RequestedModelLTE applies the LTE predicate on the "requested_model" field. +func RequestedModelLTE(v string) predicate.UsageLog { + return predicate.UsageLog(sql.FieldLTE(FieldRequestedModel, v)) +} + +// RequestedModelContains applies the Contains predicate on the "requested_model" field. +func RequestedModelContains(v string) predicate.UsageLog { + return predicate.UsageLog(sql.FieldContains(FieldRequestedModel, v)) +} + +// RequestedModelHasPrefix applies the HasPrefix predicate on the "requested_model" field. +func RequestedModelHasPrefix(v string) predicate.UsageLog { + return predicate.UsageLog(sql.FieldHasPrefix(FieldRequestedModel, v)) +} + +// RequestedModelHasSuffix applies the HasSuffix predicate on the "requested_model" field. +func RequestedModelHasSuffix(v string) predicate.UsageLog { + return predicate.UsageLog(sql.FieldHasSuffix(FieldRequestedModel, v)) +} + +// RequestedModelIsNil applies the IsNil predicate on the "requested_model" field. +func RequestedModelIsNil() predicate.UsageLog { + return predicate.UsageLog(sql.FieldIsNull(FieldRequestedModel)) +} + +// RequestedModelNotNil applies the NotNil predicate on the "requested_model" field. +func RequestedModelNotNil() predicate.UsageLog { + return predicate.UsageLog(sql.FieldNotNull(FieldRequestedModel)) +} + +// RequestedModelEqualFold applies the EqualFold predicate on the "requested_model" field. +func RequestedModelEqualFold(v string) predicate.UsageLog { + return predicate.UsageLog(sql.FieldEqualFold(FieldRequestedModel, v)) +} + +// RequestedModelContainsFold applies the ContainsFold predicate on the "requested_model" field. +func RequestedModelContainsFold(v string) predicate.UsageLog { + return predicate.UsageLog(sql.FieldContainsFold(FieldRequestedModel, v)) +} + // UpstreamModelEQ applies the EQ predicate on the "upstream_model" field. func UpstreamModelEQ(v string) predicate.UsageLog { return predicate.UsageLog(sql.FieldEQ(FieldUpstreamModel, v)) diff --git a/backend/ent/usagelog_create.go b/backend/ent/usagelog_create.go index 26be5dcb..6ae0bf59 100644 --- a/backend/ent/usagelog_create.go +++ b/backend/ent/usagelog_create.go @@ -57,6 +57,20 @@ func (_c *UsageLogCreate) SetModel(v string) *UsageLogCreate { return _c } +// SetRequestedModel sets the "requested_model" field. +func (_c *UsageLogCreate) SetRequestedModel(v string) *UsageLogCreate { + _c.mutation.SetRequestedModel(v) + return _c +} + +// SetNillableRequestedModel sets the "requested_model" field if the given value is not nil. +func (_c *UsageLogCreate) SetNillableRequestedModel(v *string) *UsageLogCreate { + if v != nil { + _c.SetRequestedModel(*v) + } + return _c +} + // SetUpstreamModel sets the "upstream_model" field. func (_c *UsageLogCreate) SetUpstreamModel(v string) *UsageLogCreate { _c.mutation.SetUpstreamModel(v) @@ -610,6 +624,11 @@ func (_c *UsageLogCreate) check() error { return &ValidationError{Name: "model", err: fmt.Errorf(`ent: validator failed for field "UsageLog.model": %w`, err)} } } + if v, ok := _c.mutation.RequestedModel(); ok { + if err := usagelog.RequestedModelValidator(v); err != nil { + return &ValidationError{Name: "requested_model", err: fmt.Errorf(`ent: validator failed for field "UsageLog.requested_model": %w`, err)} + } + } if v, ok := _c.mutation.UpstreamModel(); ok { if err := usagelog.UpstreamModelValidator(v); err != nil { return &ValidationError{Name: "upstream_model", err: fmt.Errorf(`ent: validator failed for field "UsageLog.upstream_model": %w`, err)} @@ -733,6 +752,10 @@ func (_c *UsageLogCreate) createSpec() (*UsageLog, *sqlgraph.CreateSpec) { _spec.SetField(usagelog.FieldModel, field.TypeString, value) _node.Model = value } + if value, ok := _c.mutation.RequestedModel(); ok { + _spec.SetField(usagelog.FieldRequestedModel, field.TypeString, value) + _node.RequestedModel = &value + } if value, ok := _c.mutation.UpstreamModel(); ok { _spec.SetField(usagelog.FieldUpstreamModel, field.TypeString, value) _node.UpstreamModel = &value @@ -1034,6 +1057,24 @@ func (u *UsageLogUpsert) UpdateModel() *UsageLogUpsert { return u } +// SetRequestedModel sets the "requested_model" field. +func (u *UsageLogUpsert) SetRequestedModel(v string) *UsageLogUpsert { + u.Set(usagelog.FieldRequestedModel, v) + return u +} + +// UpdateRequestedModel sets the "requested_model" field to the value that was provided on create. +func (u *UsageLogUpsert) UpdateRequestedModel() *UsageLogUpsert { + u.SetExcluded(usagelog.FieldRequestedModel) + return u +} + +// ClearRequestedModel clears the value of the "requested_model" field. +func (u *UsageLogUpsert) ClearRequestedModel() *UsageLogUpsert { + u.SetNull(usagelog.FieldRequestedModel) + return u +} + // SetUpstreamModel sets the "upstream_model" field. func (u *UsageLogUpsert) SetUpstreamModel(v string) *UsageLogUpsert { u.Set(usagelog.FieldUpstreamModel, v) @@ -1641,6 +1682,27 @@ func (u *UsageLogUpsertOne) UpdateModel() *UsageLogUpsertOne { }) } +// SetRequestedModel sets the "requested_model" field. +func (u *UsageLogUpsertOne) SetRequestedModel(v string) *UsageLogUpsertOne { + return u.Update(func(s *UsageLogUpsert) { + s.SetRequestedModel(v) + }) +} + +// UpdateRequestedModel sets the "requested_model" field to the value that was provided on create. +func (u *UsageLogUpsertOne) UpdateRequestedModel() *UsageLogUpsertOne { + return u.Update(func(s *UsageLogUpsert) { + s.UpdateRequestedModel() + }) +} + +// ClearRequestedModel clears the value of the "requested_model" field. +func (u *UsageLogUpsertOne) ClearRequestedModel() *UsageLogUpsertOne { + return u.Update(func(s *UsageLogUpsert) { + s.ClearRequestedModel() + }) +} + // SetUpstreamModel sets the "upstream_model" field. func (u *UsageLogUpsertOne) SetUpstreamModel(v string) *UsageLogUpsertOne { return u.Update(func(s *UsageLogUpsert) { @@ -2496,6 +2558,27 @@ func (u *UsageLogUpsertBulk) UpdateModel() *UsageLogUpsertBulk { }) } +// SetRequestedModel sets the "requested_model" field. +func (u *UsageLogUpsertBulk) SetRequestedModel(v string) *UsageLogUpsertBulk { + return u.Update(func(s *UsageLogUpsert) { + s.SetRequestedModel(v) + }) +} + +// UpdateRequestedModel sets the "requested_model" field to the value that was provided on create. +func (u *UsageLogUpsertBulk) UpdateRequestedModel() *UsageLogUpsertBulk { + return u.Update(func(s *UsageLogUpsert) { + s.UpdateRequestedModel() + }) +} + +// ClearRequestedModel clears the value of the "requested_model" field. +func (u *UsageLogUpsertBulk) ClearRequestedModel() *UsageLogUpsertBulk { + return u.Update(func(s *UsageLogUpsert) { + s.ClearRequestedModel() + }) +} + // SetUpstreamModel sets the "upstream_model" field. func (u *UsageLogUpsertBulk) SetUpstreamModel(v string) *UsageLogUpsertBulk { return u.Update(func(s *UsageLogUpsert) { diff --git a/backend/ent/usagelog_update.go b/backend/ent/usagelog_update.go index b7c4632c..516407b9 100644 --- a/backend/ent/usagelog_update.go +++ b/backend/ent/usagelog_update.go @@ -102,6 +102,26 @@ func (_u *UsageLogUpdate) SetNillableModel(v *string) *UsageLogUpdate { return _u } +// SetRequestedModel sets the "requested_model" field. +func (_u *UsageLogUpdate) SetRequestedModel(v string) *UsageLogUpdate { + _u.mutation.SetRequestedModel(v) + return _u +} + +// SetNillableRequestedModel sets the "requested_model" field if the given value is not nil. +func (_u *UsageLogUpdate) SetNillableRequestedModel(v *string) *UsageLogUpdate { + if v != nil { + _u.SetRequestedModel(*v) + } + return _u +} + +// ClearRequestedModel clears the value of the "requested_model" field. +func (_u *UsageLogUpdate) ClearRequestedModel() *UsageLogUpdate { + _u.mutation.ClearRequestedModel() + return _u +} + // SetUpstreamModel sets the "upstream_model" field. func (_u *UsageLogUpdate) SetUpstreamModel(v string) *UsageLogUpdate { _u.mutation.SetUpstreamModel(v) @@ -765,6 +785,11 @@ func (_u *UsageLogUpdate) check() error { return &ValidationError{Name: "model", err: fmt.Errorf(`ent: validator failed for field "UsageLog.model": %w`, err)} } } + if v, ok := _u.mutation.RequestedModel(); ok { + if err := usagelog.RequestedModelValidator(v); err != nil { + return &ValidationError{Name: "requested_model", err: fmt.Errorf(`ent: validator failed for field "UsageLog.requested_model": %w`, err)} + } + } if v, ok := _u.mutation.UpstreamModel(); ok { if err := usagelog.UpstreamModelValidator(v); err != nil { return &ValidationError{Name: "upstream_model", err: fmt.Errorf(`ent: validator failed for field "UsageLog.upstream_model": %w`, err)} @@ -820,6 +845,12 @@ func (_u *UsageLogUpdate) sqlSave(ctx context.Context) (_node int, err error) { if value, ok := _u.mutation.Model(); ok { _spec.SetField(usagelog.FieldModel, field.TypeString, value) } + if value, ok := _u.mutation.RequestedModel(); ok { + _spec.SetField(usagelog.FieldRequestedModel, field.TypeString, value) + } + if _u.mutation.RequestedModelCleared() { + _spec.ClearField(usagelog.FieldRequestedModel, field.TypeString) + } if value, ok := _u.mutation.UpstreamModel(); ok { _spec.SetField(usagelog.FieldUpstreamModel, field.TypeString, value) } @@ -1208,6 +1239,26 @@ func (_u *UsageLogUpdateOne) SetNillableModel(v *string) *UsageLogUpdateOne { return _u } +// SetRequestedModel sets the "requested_model" field. +func (_u *UsageLogUpdateOne) SetRequestedModel(v string) *UsageLogUpdateOne { + _u.mutation.SetRequestedModel(v) + return _u +} + +// SetNillableRequestedModel sets the "requested_model" field if the given value is not nil. +func (_u *UsageLogUpdateOne) SetNillableRequestedModel(v *string) *UsageLogUpdateOne { + if v != nil { + _u.SetRequestedModel(*v) + } + return _u +} + +// ClearRequestedModel clears the value of the "requested_model" field. +func (_u *UsageLogUpdateOne) ClearRequestedModel() *UsageLogUpdateOne { + _u.mutation.ClearRequestedModel() + return _u +} + // SetUpstreamModel sets the "upstream_model" field. func (_u *UsageLogUpdateOne) SetUpstreamModel(v string) *UsageLogUpdateOne { _u.mutation.SetUpstreamModel(v) @@ -1884,6 +1935,11 @@ func (_u *UsageLogUpdateOne) check() error { return &ValidationError{Name: "model", err: fmt.Errorf(`ent: validator failed for field "UsageLog.model": %w`, err)} } } + if v, ok := _u.mutation.RequestedModel(); ok { + if err := usagelog.RequestedModelValidator(v); err != nil { + return &ValidationError{Name: "requested_model", err: fmt.Errorf(`ent: validator failed for field "UsageLog.requested_model": %w`, err)} + } + } if v, ok := _u.mutation.UpstreamModel(); ok { if err := usagelog.UpstreamModelValidator(v); err != nil { return &ValidationError{Name: "upstream_model", err: fmt.Errorf(`ent: validator failed for field "UsageLog.upstream_model": %w`, err)} @@ -1956,6 +2012,12 @@ func (_u *UsageLogUpdateOne) sqlSave(ctx context.Context) (_node *UsageLog, err if value, ok := _u.mutation.Model(); ok { _spec.SetField(usagelog.FieldModel, field.TypeString, value) } + if value, ok := _u.mutation.RequestedModel(); ok { + _spec.SetField(usagelog.FieldRequestedModel, field.TypeString, value) + } + if _u.mutation.RequestedModelCleared() { + _spec.ClearField(usagelog.FieldRequestedModel, field.TypeString) + } if value, ok := _u.mutation.UpstreamModel(); ok { _spec.SetField(usagelog.FieldUpstreamModel, field.TypeString, value) }