feat: add OpenAI image generation controls

This commit is contained in:
2ue
2026-05-05 03:26:54 +08:00
parent 4de28fec8c
commit 6faa344916
85 changed files with 6086 additions and 568 deletions
+196 -1
View File
@@ -14764,6 +14764,10 @@ type GroupMutation struct {
addmonthly_limit_usd *float64
default_validity_days *int
adddefault_validity_days *int
allow_image_generation *bool
image_rate_independent *bool
image_rate_multiplier *float64
addimage_rate_multiplier *float64
image_price_1k *float64
addimage_price_1k *float64
image_price_2k *float64
@@ -15583,6 +15587,134 @@ func (m *GroupMutation) ResetDefaultValidityDays() {
m.adddefault_validity_days = nil
}
// SetAllowImageGeneration sets the "allow_image_generation" field.
func (m *GroupMutation) SetAllowImageGeneration(b bool) {
m.allow_image_generation = &b
}
// AllowImageGeneration returns the value of the "allow_image_generation" field in the mutation.
func (m *GroupMutation) AllowImageGeneration() (r bool, exists bool) {
v := m.allow_image_generation
if v == nil {
return
}
return *v, true
}
// OldAllowImageGeneration returns the old "allow_image_generation" field's value of the Group entity.
// If the Group 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 *GroupMutation) OldAllowImageGeneration(ctx context.Context) (v bool, err error) {
if !m.op.Is(OpUpdateOne) {
return v, errors.New("OldAllowImageGeneration is only allowed on UpdateOne operations")
}
if m.id == nil || m.oldValue == nil {
return v, errors.New("OldAllowImageGeneration requires an ID field in the mutation")
}
oldValue, err := m.oldValue(ctx)
if err != nil {
return v, fmt.Errorf("querying old value for OldAllowImageGeneration: %w", err)
}
return oldValue.AllowImageGeneration, nil
}
// ResetAllowImageGeneration resets all changes to the "allow_image_generation" field.
func (m *GroupMutation) ResetAllowImageGeneration() {
m.allow_image_generation = nil
}
// SetImageRateIndependent sets the "image_rate_independent" field.
func (m *GroupMutation) SetImageRateIndependent(b bool) {
m.image_rate_independent = &b
}
// ImageRateIndependent returns the value of the "image_rate_independent" field in the mutation.
func (m *GroupMutation) ImageRateIndependent() (r bool, exists bool) {
v := m.image_rate_independent
if v == nil {
return
}
return *v, true
}
// OldImageRateIndependent returns the old "image_rate_independent" field's value of the Group entity.
// If the Group 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 *GroupMutation) OldImageRateIndependent(ctx context.Context) (v bool, err error) {
if !m.op.Is(OpUpdateOne) {
return v, errors.New("OldImageRateIndependent is only allowed on UpdateOne operations")
}
if m.id == nil || m.oldValue == nil {
return v, errors.New("OldImageRateIndependent requires an ID field in the mutation")
}
oldValue, err := m.oldValue(ctx)
if err != nil {
return v, fmt.Errorf("querying old value for OldImageRateIndependent: %w", err)
}
return oldValue.ImageRateIndependent, nil
}
// ResetImageRateIndependent resets all changes to the "image_rate_independent" field.
func (m *GroupMutation) ResetImageRateIndependent() {
m.image_rate_independent = nil
}
// SetImageRateMultiplier sets the "image_rate_multiplier" field.
func (m *GroupMutation) SetImageRateMultiplier(f float64) {
m.image_rate_multiplier = &f
m.addimage_rate_multiplier = nil
}
// ImageRateMultiplier returns the value of the "image_rate_multiplier" field in the mutation.
func (m *GroupMutation) ImageRateMultiplier() (r float64, exists bool) {
v := m.image_rate_multiplier
if v == nil {
return
}
return *v, true
}
// OldImageRateMultiplier returns the old "image_rate_multiplier" field's value of the Group entity.
// If the Group 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 *GroupMutation) OldImageRateMultiplier(ctx context.Context) (v float64, err error) {
if !m.op.Is(OpUpdateOne) {
return v, errors.New("OldImageRateMultiplier is only allowed on UpdateOne operations")
}
if m.id == nil || m.oldValue == nil {
return v, errors.New("OldImageRateMultiplier requires an ID field in the mutation")
}
oldValue, err := m.oldValue(ctx)
if err != nil {
return v, fmt.Errorf("querying old value for OldImageRateMultiplier: %w", err)
}
return oldValue.ImageRateMultiplier, nil
}
// AddImageRateMultiplier adds f to the "image_rate_multiplier" field.
func (m *GroupMutation) AddImageRateMultiplier(f float64) {
if m.addimage_rate_multiplier != nil {
*m.addimage_rate_multiplier += f
} else {
m.addimage_rate_multiplier = &f
}
}
// AddedImageRateMultiplier returns the value that was added to the "image_rate_multiplier" field in this mutation.
func (m *GroupMutation) AddedImageRateMultiplier() (r float64, exists bool) {
v := m.addimage_rate_multiplier
if v == nil {
return
}
return *v, true
}
// ResetImageRateMultiplier resets all changes to the "image_rate_multiplier" field.
func (m *GroupMutation) ResetImageRateMultiplier() {
m.image_rate_multiplier = nil
m.addimage_rate_multiplier = nil
}
// SetImagePrice1k sets the "image_price_1k" field.
func (m *GroupMutation) SetImagePrice1k(f float64) {
m.image_price_1k = &f
@@ -16791,7 +16923,7 @@ func (m *GroupMutation) Type() string {
// order to get all numeric fields that were incremented/decremented, call
// AddedFields().
func (m *GroupMutation) Fields() []string {
fields := make([]string, 0, 31)
fields := make([]string, 0, 34)
if m.created_at != nil {
fields = append(fields, group.FieldCreatedAt)
}
@@ -16834,6 +16966,15 @@ func (m *GroupMutation) Fields() []string {
if m.default_validity_days != nil {
fields = append(fields, group.FieldDefaultValidityDays)
}
if m.allow_image_generation != nil {
fields = append(fields, group.FieldAllowImageGeneration)
}
if m.image_rate_independent != nil {
fields = append(fields, group.FieldImageRateIndependent)
}
if m.image_rate_multiplier != nil {
fields = append(fields, group.FieldImageRateMultiplier)
}
if m.image_price_1k != nil {
fields = append(fields, group.FieldImagePrice1k)
}
@@ -16921,6 +17062,12 @@ func (m *GroupMutation) Field(name string) (ent.Value, bool) {
return m.MonthlyLimitUsd()
case group.FieldDefaultValidityDays:
return m.DefaultValidityDays()
case group.FieldAllowImageGeneration:
return m.AllowImageGeneration()
case group.FieldImageRateIndependent:
return m.ImageRateIndependent()
case group.FieldImageRateMultiplier:
return m.ImageRateMultiplier()
case group.FieldImagePrice1k:
return m.ImagePrice1k()
case group.FieldImagePrice2k:
@@ -16992,6 +17139,12 @@ func (m *GroupMutation) OldField(ctx context.Context, name string) (ent.Value, e
return m.OldMonthlyLimitUsd(ctx)
case group.FieldDefaultValidityDays:
return m.OldDefaultValidityDays(ctx)
case group.FieldAllowImageGeneration:
return m.OldAllowImageGeneration(ctx)
case group.FieldImageRateIndependent:
return m.OldImageRateIndependent(ctx)
case group.FieldImageRateMultiplier:
return m.OldImageRateMultiplier(ctx)
case group.FieldImagePrice1k:
return m.OldImagePrice1k(ctx)
case group.FieldImagePrice2k:
@@ -17133,6 +17286,27 @@ func (m *GroupMutation) SetField(name string, value ent.Value) error {
}
m.SetDefaultValidityDays(v)
return nil
case group.FieldAllowImageGeneration:
v, ok := value.(bool)
if !ok {
return fmt.Errorf("unexpected type %T for field %s", value, name)
}
m.SetAllowImageGeneration(v)
return nil
case group.FieldImageRateIndependent:
v, ok := value.(bool)
if !ok {
return fmt.Errorf("unexpected type %T for field %s", value, name)
}
m.SetImageRateIndependent(v)
return nil
case group.FieldImageRateMultiplier:
v, ok := value.(float64)
if !ok {
return fmt.Errorf("unexpected type %T for field %s", value, name)
}
m.SetImageRateMultiplier(v)
return nil
case group.FieldImagePrice1k:
v, ok := value.(float64)
if !ok {
@@ -17275,6 +17449,9 @@ func (m *GroupMutation) AddedFields() []string {
if m.adddefault_validity_days != nil {
fields = append(fields, group.FieldDefaultValidityDays)
}
if m.addimage_rate_multiplier != nil {
fields = append(fields, group.FieldImageRateMultiplier)
}
if m.addimage_price_1k != nil {
fields = append(fields, group.FieldImagePrice1k)
}
@@ -17314,6 +17491,8 @@ func (m *GroupMutation) AddedField(name string) (ent.Value, bool) {
return m.AddedMonthlyLimitUsd()
case group.FieldDefaultValidityDays:
return m.AddedDefaultValidityDays()
case group.FieldImageRateMultiplier:
return m.AddedImageRateMultiplier()
case group.FieldImagePrice1k:
return m.AddedImagePrice1k()
case group.FieldImagePrice2k:
@@ -17372,6 +17551,13 @@ func (m *GroupMutation) AddField(name string, value ent.Value) error {
}
m.AddDefaultValidityDays(v)
return nil
case group.FieldImageRateMultiplier:
v, ok := value.(float64)
if !ok {
return fmt.Errorf("unexpected type %T for field %s", value, name)
}
m.AddImageRateMultiplier(v)
return nil
case group.FieldImagePrice1k:
v, ok := value.(float64)
if !ok {
@@ -17559,6 +17745,15 @@ func (m *GroupMutation) ResetField(name string) error {
case group.FieldDefaultValidityDays:
m.ResetDefaultValidityDays()
return nil
case group.FieldAllowImageGeneration:
m.ResetAllowImageGeneration()
return nil
case group.FieldImageRateIndependent:
m.ResetImageRateIndependent()
return nil
case group.FieldImageRateMultiplier:
m.ResetImageRateMultiplier()
return nil
case group.FieldImagePrice1k:
m.ResetImagePrice1k()
return nil