ed6502a880
Three submission methods: - POST /api/bets/quickslip — structured bet entry - POST /api/bets/screenshot — stub OCR with confirm flow - POST /api/bets/sync — coming soon stub Full bet lifecycle: - PATCH /api/bets/:id/settle — settle with outcome, recalculates performance - GET /api/bets — list with status/book/pagination filters - GET /api/bets/performance — ROI, win rate, profit (weekly/monthly/all_time) Payout calculator handles straight bets (American odds) and parlays (multiplied leg payouts). Performance service recalculates on each settlement and upserts into performance table. 33 new tests, 221 total (194 Node.js + 27 Python), all passing. All backend features for Phase 1 + Phase 2 now complete. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
20 lines
650 B
JavaScript
20 lines
650 B
JavaScript
require('dotenv').config();
|
|
const express = require('express');
|
|
const oddsRoutes = require('./routes/odds');
|
|
const analyzeRoutes = require('./routes/analyze');
|
|
const scanRoutes = require('./routes/scan');
|
|
const movementsRoutes = require('./routes/movements');
|
|
const alertsRoutes = require('./routes/alerts');
|
|
const betsRoutes = require('./routes/bets');
|
|
|
|
const app = express();
|
|
app.use(express.json());
|
|
app.use('/api/odds', oddsRoutes);
|
|
app.use('/api/analyze', analyzeRoutes);
|
|
app.use('/api/scan', scanRoutes);
|
|
app.use('/api/movements', movementsRoutes);
|
|
app.use('/api/alerts', alertsRoutes);
|
|
app.use('/api/bets', betsRoutes);
|
|
|
|
module.exports = app;
|