Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
c161905
feat: add entities for Client, Reservation, RestaurantTable and User
cloudxdam May 6, 2026
de0f592
update repository
cloudxdam May 6, 2026
02ae5f3
fix: improve fields in Reservation and RestaurantTable
cloudxdam May 6, 2026
6082935
Merge branch 'develop' into feature/crud-tables
cloudxdam May 6, 2026
0d4abc3
feat: implement basic restaurant table CRUD
cloudxdam May 6, 2026
d959aca
feat: complete restaurant table CRUD operations
cloudxdam May 7, 2026
ae8dcf9
feat: add table capacity filter and fix CRUD endpoints
cloudxdam May 7, 2026
95b4609
feat: add restaurant table filtering endpoints
cloudxdam May 7, 2026
685e08c
refactor: use User for reservation and remove Client to avoid redundancy
cloudxdam May 8, 2026
9e8fa0a
feat: add Reservation DTOs
cloudxdam May 8, 2026
bf6bbb0
feat: add reservation creation logic
cloudxdam May 9, 2026
2147630
feat: add reservation listing and cancellation
cloudxdam May 9, 2026
8dcff76
feat: add JWT authentication and security configuration
cloudxdam May 10, 2026
79c7207
fix: replace plain passwords with hashed passwords in data.sql
cloudxdam May 10, 2026
8b54d0b
feat: show reservations based on authenticated user role
cloudxdam May 10, 2026
805633d
fix: remove unused import
cloudxdam May 10, 2026
edfb3cd
feat: add register endpoint
cloudxdam May 10, 2026
6b6eda2
fix: use jwt user for reservation creation
cloudxdam May 10, 2026
1d94f0c
fix: restrict reservations access by authenticated user
cloudxdam May 11, 2026
e80639c
refactor: remove userId reservation endpoint and fix findByStatus fil…
cloudxdam May 11, 2026
c603108
docs: update postman collection
cloudxdam May 11, 2026
5547582
fix: validate past reservation dates and add Mockito tests
cloudxdam May 12, 2026
6d64193
docs: add swagger configuration
cloudxdam May 12, 2026
9ef9efd
docs: add javadocs to controllers and services
cloudxdam May 12, 2026
2f71c06
docs: add missing javadoc to auth service register
cloudxdam May 12, 2026
4b43e04
feat: add penalization points and status to AppUser
cloudxdam May 14, 2026
08bc875
feat: add late cancellation or no-show penalty logic
cloudxdam May 14, 2026
f3e0dd2
feat: prevent banned users from creating reservations
cloudxdam May 14, 2026
becf744
feat: add admin endpoint to reset penalization points
cloudxdam May 15, 2026
4107e35
feat: implement VIP logic in Service
cloudxdam May 20, 2026
8de7259
feat: implement filter endpoint
cloudxdam May 20, 2026
8026fd6
docs: add README and remove Spring template help file
cloudxdam Jul 24, 2026
a0e57ad
chore: ignore IDE files and remove tracked build artifacts
cloudxdam Jul 24, 2026
5b8e987
chore: add project metadata
cloudxdam Sep 24, 2026
ba36269
docs: update README
cloudxdam Sep 24, 2026
b6a1bb6
Merge pull request #1 from cloudxdam/chore/readme-and-repo-cleanup
cloudxdam Sep 24, 2026
5785336
fix: move jwt secret to environment variable and rotate it
cloudxdam Oct 5, 2026
3a231ee
chore: regenerate maven wrapper
cloudxdam Oct 5, 2026
4ceaef1
Merge pull request #3 from cloudxdam/fix/jwt-secret-to-env
cloudxdam Oct 5, 2026
a6e5d7f
test: add integration tests exposing missing transaction boundaries
cloudxdam Oct 5, 2026
2005342
fix: make reservation mutations transactional
cloudxdam Oct 5, 2026
35fd467
Merge pull request #4 from cloudxdam/fix/transaction-boundaries
cloudxdam Oct 5, 2026
5b62562
fix: lock table row when creating a reservation
cloudxdam Oct 5, 2026
e6a6f0f
test: add regression test for duplicate booking
cloudxdam Oct 5, 2026
d7616f5
Merge pull request #6 from cloudxdam/fix/pessimistic-booking-lock
cloudxdam Oct 5, 2026
f5089a1
test: assert vip table requires a habitual customer
cloudxdam Oct 6, 2026
f360a3c
fix: scope the vip gate to the current user
cloudxdam Oct 6, 2026
dcb8572
Merge pull request #7 from cloudxdam/fix/vip-gate-user-scope
cloudxdam Oct 6, 2026
2591126
ci: run tests on every pull request
cloudxdam Oct 6, 2026
ed6f5de
docs: add ci status badge
cloudxdam Oct 6, 2026
243b88c
Merge pull request #8 from cloudxdam/ci/github-actions
cloudxdam Oct 6, 2026
1aa237e
refactor: seed demo data through a conditional runner
cloudxdam Oct 6, 2026
1bc09b5
feat: add postgres profile with docker compose
cloudxdam Oct 7, 2026
6d8c78c
docs: document the postgres profile
cloudxdam Oct 7, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Required environment variables.
# See "Configure the JWT secret" in README.md to generate .env with a real value.
JWT_SECRET=

# PostgreSQL (only needed for the `postgres` profile).
POSTGRES_DB=restoreserve
POSTGRES_USER=restoreserve
POSTGRES_PASSWORD=
25 changes: 25 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: CI

on:
push:
branches: [develop, main]
pull_request:
branches: [develop, main]

permissions:
contents: read

jobs:
test:
runs-on: ubuntu-latest
env:
JWT_SECRET: ci-only-secret-not-for-production-use-0123456789
steps:
- uses: actions/checkout@v7
- uses: actions/setup-java@v5
with:
distribution: temurin
java-version: '17'
cache: maven
- name: Run tests
run: ./mvnw -B test
8 changes: 8 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
target/
.idea/
*.iml
.classpath
.factorypath
.project
.settings/
.env
3 changes: 3 additions & 0 deletions .mvn/wrapper/maven-wrapper.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
wrapperVersion=3.3.4
distributionType=only-script
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.9/apache-maven-3.9.9-bin.zip
9 changes: 9 additions & 0 deletions .postman/resources.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Use this workspace to collaborate
workspace:
id: 13ec3ef0-3bb0-47ac-b761-570cdb795e02

# All resources in the `postman/` folder are automatically registered in Local View.
# Point to additional files outside the `postman/` folder to register them individually. Example:
#localResources:
# collections:
# - ../tests/E2E Test Collection/
14 changes: 14 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"configurations": [
{
"type": "java",
"name": "Spring Boot-RestoreserveApplication<restoreserve>",
"request": "launch",
"cwd": "${workspaceFolder}",
"mainClass": "com.pachedev.restoreserve.RestoreserveApplication",
"projectName": "restoreserve",
"args": "",
"envFile": "${workspaceFolder}/.env"
}
]
}
3 changes: 3 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"java.configuration.updateBuildConfiguration": "interactive"
}
33 changes: 0 additions & 33 deletions HELP.md

This file was deleted.

Loading
Loading