diff options
author | 2024-08-08 16:53:59 -0700 | |
---|---|---|
committer | 2024-08-08 16:53:59 -0700 | |
commit | f34b92ded11b07f78575ac62c260a380c468e5ea (patch) | |
tree | 8ffdc68ed0f2e253e7f9feff3aa90a1182e5946c /backend/internal/database/stocks.go | |
parent | a439618cdc8168bad617d04875697b572f3ed41d (diff) | |
download | ibd-trader-f34b92ded11b07f78575ac62c260a380c468e5ea.tar.gz ibd-trader-f34b92ded11b07f78575ac62c260a380c468e5ea.tar.zst ibd-trader-f34b92ded11b07f78575ac62c260a380c468e5ea.zip |
Rework redis taskqueue to store task results
Diffstat (limited to 'backend/internal/database/stocks.go')
-rw-r--r-- | backend/internal/database/stocks.go | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/backend/internal/database/stocks.go b/backend/internal/database/stocks.go index 0627a72..24f5fe7 100644 --- a/backend/internal/database/stocks.go +++ b/backend/internal/database/stocks.go @@ -151,8 +151,13 @@ WHERE r.id = $1;`, id) return &info, nil } -func AddAnalysis(ctx context.Context, exec Executor, ratingId string, analysis *analyzer.Analysis) error { - _, err := exec.ExecContext(ctx, ` +func AddAnalysis( + ctx context.Context, + exec Executor, + ratingId string, + analysis *analyzer.Analysis, +) (id string, err error) { + err = exec.QueryRowContext(ctx, ` UPDATE chart_analysis ca SET processed = true, action = $2, @@ -161,14 +166,15 @@ SET processed = true, confidence = $5 FROM ratings r WHERE r.id = $1 - AND r.chart_analysis = ca.id;`, + AND r.chart_analysis = ca.id +RETURNING ca.id;`, ratingId, analysis.Action, analysis.Price.Display(), analysis.Reason, analysis.Confidence, - ) - return err + ).Scan(&id) + return id, err } type Stock struct { |