How barabol/pewniaczekbetback works
PewniaczekBet is a sports-betting backend. Users place prediction, exact-score, and match-winner bets; the services debit balances and record wagers, while scheduled settlement evaluates outcomes and credits winnings. Separate workflows cover account access and social profiles, payment top-ups through Stripe, and worker-managed games and betting markets. The graph follows sampled service calls where available; controller wiring for unsampled areas and some repository interactions is inferred from names and imports, so uncertain links are omitted.
Main entry points: PaymentService.java Payment service · UserRepository.java User repository · BetService.java Bet service · WorkerService.java Worker service
Components 22
API entry points
- Bet API
back/app/src/main/java/com/pewniaczekbet/rest/BetControler.java - User API
back/app/src/main/java/com/pewniaczekbet/rest/UserControler.java - Payment API
back/app/src/main/java/com/pewniaczekbet/rest/PaymentControler.java - Worker API
back/app/src/main/java/com/pewniaczekbet/rest/WorkerControler.java
Betting and settlement
- Bet service
back/app/src/main/java/com/pewniaczekbet/services/BetService.java - Bet settlement
back/app/src/main/java/com/pewniaczekbet/other/DbIntervalHandler.java - Bet repositories
back/app/src/main/java/com/pewniaczekbet/model/dao/ScoreBetRepository.java - Placed bet repository
back/app/src/main/java/com/pewniaczekbet/model/dao/UserScoreBetRepository.java
Accounts and payments
- User service
back/app/src/main/java/com/pewniaczekbet/services/UserService.java - User repository
back/app/src/main/java/com/pewniaczekbet/model/dao/UserRepository.java - Follow repository
back/app/src/main/java/com/pewniaczekbet/model/dao/FollowerRepository.java - Payment service
back/app/src/main/java/com/pewniaczekbet/services/PaymentService.java - Payment repository
back/app/src/main/java/com/pewniaczekbet/model/dao/PaymentRepository.java - Payment status
back/app/src/main/java/com/pewniaczekbet/model/dao/PaymentStatusRepository.java - Stripe client setup
back/app/src/main/java/com/pewniaczekbet/services/StripeService.java
Market operations
- Worker service
back/app/src/main/java/com/pewniaczekbet/services/WorkerService.java - Game repository
back/app/src/main/java/com/pewniaczekbet/model/dao/GameRepository.java - Log repository
back/app/src/main/java/com/pewniaczekbet/model/dao/LogRepository.java
Other components
- Bettor
- Worker
- Stripe
- Application database
Connections 32
- Bettor → Bet API: submits bets
- Bet API → Bet service: dispatches
- Bet service → Bet repositories: reads markets
- Bet service → Placed bet repository: saves wagers
- Bet service → User repository: updates balance
- Bet settlement → Bet repositories: loads due markets
- Bet settlement → Placed bet repository: loads wagers
- Bet settlement → User repository: credits winners
- Bettor → User API: manages account
- User API → User service: dispatches
- User service → User repository: reads and writes
- User service → Follow repository: manages follows
- Bettor → Payment API: tops up balance
- Payment API → Payment service: dispatches
- Payment service → Payment repository: records payments
- Payment service → Payment status: reads status
- Payment service → User repository: loads and credits user
- Payment service → Stripe client setup: gets client
- Payment service → Stripe: creates and checks sessions
- Worker → Worker API: manages markets
- Worker API → Worker service: dispatches
- Worker service → Game repository: updates games
- Worker service → Bet repositories: saves markets
- Worker service → Log repository: records actions
- Bet repositories → Application database: reads and writes
- Placed bet repository → Application database: reads and writes
- User repository → Application database: reads and writes
- Follow repository → Application database: reads and writes
- Payment repository → Application database: reads and writes
- Payment status → Application database: reads status
- Game repository → Application database: reads and writes
- Log repository → Application database: writes logs