diff --git a/compose/dalutils/records.go b/compose/dalutils/records.go index 97222b470..8eaf1c932 100644 --- a/compose/dalutils/records.go +++ b/compose/dalutils/records.go @@ -2,13 +2,11 @@ package dalutils import ( "context" - "math" - "time" - "github.com/cortezaproject/corteza-server/compose/types" "github.com/cortezaproject/corteza-server/pkg/dal" "github.com/cortezaproject/corteza-server/pkg/dal/capabilities" "github.com/cortezaproject/corteza-server/pkg/filter" + "math" ) type ( @@ -75,13 +73,7 @@ func ComposeRecordUpdate(ctx context.Context, u updater, mod *types.Module, reco return u.Update(ctx, mod.ModelFilter(), recUpdateCapabilities(mod), recToGetters(records...)...) } -func ComposeRecordSoftDelete(ctx context.Context, u updater, invoker uint64, mod *types.Module, records ...*types.Record) (err error) { - n := time.Now().Round(time.Second).UTC() - for _, r := range records { - r.DeletedAt = &n - r.DeletedBy = invoker - } - +func ComposeRecordSoftDelete(ctx context.Context, u updater, mod *types.Module, records ...*types.Record) (err error) { return u.Update(ctx, mod.ModelFilter(), recUpdateCapabilities(mod), recToGetters(records...)...) } diff --git a/compose/service/record.go b/compose/service/record.go index 78fb14793..7d614af6d 100644 --- a/compose/service/record.go +++ b/compose/service/record.go @@ -1090,6 +1090,9 @@ func (svc record) delete(ctx context.Context, namespaceID, moduleID, recordID ui return nil, RecordErrNotAllowedToDelete() } + del.DeletedAt = nowUTC() + del.DeletedBy = invokerID + // ensure module ref is set before running through records workflows and scripts del.SetModule(m) @@ -1099,8 +1102,7 @@ func (svc record) delete(ctx context.Context, namespaceID, moduleID, recordID ui return nil, err } } - - if err = dalutils.ComposeRecordSoftDelete(ctx, svc.dal, invokerID, m, del); err != nil { + if err = dalutils.ComposeRecordSoftDelete(ctx, svc.dal, m, del); err != nil { return nil, err } @@ -1502,7 +1504,7 @@ func (svc record) Iterator(ctx context.Context, f types.RecordFilter, fn eventbu return store.Tx(ctx, svc.store, func(ctx context.Context, s store.Storer) error { rec.DeletedAt = nowUTC() rec.DeletedBy = invokerID - return dalutils.ComposeRecordSoftDelete(ctx, svc.dal, invokerID, m, rec) + return dalutils.ComposeRecordSoftDelete(ctx, svc.dal, m, rec) }) }