MCPcopy
hub / github.com/cloudreve/cloudreve / sqlSave

Method sqlSave

ent/share_update.go:670–815  ·  view source on GitHub ↗
(ctx context.Context)

Source from the content-addressed store, hash-verified

668}
669
670func (suo *ShareUpdateOne) sqlSave(ctx context.Context) (_node *Share, err error) {
671 _spec := sqlgraph.NewUpdateSpec(share.Table, share.Columns, sqlgraph.NewFieldSpec(share.FieldID, field.TypeInt))
672 id, ok := suo.mutation.ID()
673 if !ok {
674 return nil, &ValidationError{Name: "id", err: errors.New(`ent: missing "Share.id" for update`)}
675 }
676 _spec.Node.ID.Value = id
677 if fields := suo.fields; len(fields) > 0 {
678 _spec.Node.Columns = make([]string, 0, len(fields))
679 _spec.Node.Columns = append(_spec.Node.Columns, share.FieldID)
680 for _, f := range fields {
681 if !share.ValidColumn(f) {
682 return nil, &ValidationError{Name: f, err: fmt.Errorf("ent: invalid field %q for query", f)}
683 }
684 if f != share.FieldID {
685 _spec.Node.Columns = append(_spec.Node.Columns, f)
686 }
687 }
688 }
689 if ps := suo.mutation.predicates; len(ps) > 0 {
690 _spec.Predicate = func(selector *sql.Selector) {
691 for i := range ps {
692 ps[i](selector)
693 }
694 }
695 }
696 if value, ok := suo.mutation.UpdatedAt(); ok {
697 _spec.SetField(share.FieldUpdatedAt, field.TypeTime, value)
698 }
699 if value, ok := suo.mutation.DeletedAt(); ok {
700 _spec.SetField(share.FieldDeletedAt, field.TypeTime, value)
701 }
702 if suo.mutation.DeletedAtCleared() {
703 _spec.ClearField(share.FieldDeletedAt, field.TypeTime)
704 }
705 if value, ok := suo.mutation.Password(); ok {
706 _spec.SetField(share.FieldPassword, field.TypeString, value)
707 }
708 if suo.mutation.PasswordCleared() {
709 _spec.ClearField(share.FieldPassword, field.TypeString)
710 }
711 if value, ok := suo.mutation.Views(); ok {
712 _spec.SetField(share.FieldViews, field.TypeInt, value)
713 }
714 if value, ok := suo.mutation.AddedViews(); ok {
715 _spec.AddField(share.FieldViews, field.TypeInt, value)
716 }
717 if value, ok := suo.mutation.Downloads(); ok {
718 _spec.SetField(share.FieldDownloads, field.TypeInt, value)
719 }
720 if value, ok := suo.mutation.AddedDownloads(); ok {
721 _spec.AddField(share.FieldDownloads, field.TypeInt, value)
722 }
723 if value, ok := suo.mutation.Expires(); ok {
724 _spec.SetField(share.FieldExpires, field.TypeTime, value)
725 }
726 if suo.mutation.ExpiresCleared() {
727 _spec.ClearField(share.FieldExpires, field.TypeTime)

Callers

nothing calls this directly

Calls 15

ValidColumnFunction · 0.92
ViewsMethod · 0.80
AddedViewsMethod · 0.80
ExpiresMethod · 0.80
ExpiresClearedMethod · 0.80
RemainDownloadsMethod · 0.80
AddedRemainDownloadsMethod · 0.80
IDMethod · 0.65
NewMethod · 0.65
UpdatedAtMethod · 0.65
PropsMethod · 0.65

Tested by

no test coverage detected