In this application, we want you to design a small-scale fleet management system where vehicles make deliveries to predetermined locations along a certain route.
The system have two different shipment types which are Bag and Package.
The system has vehicle and then vehicle has a licence plate.
The system have three different delivery points. These are Branch, Distribution Center, and Transfer Center.
- Java 11
- Spring Boot Environments 2.7.1
- Lombok
- Resilience4J
- Redis
- Apache Kafka
- Test Containers 1.17.3
- Mockito 1.10.19
- MySQL
- SpringDoc 1.6.7
- Docker
Vehicle
- POST /vehicle
for create vehicle
DeliveryPoint
- POST /delivery-points
for create delivery point
Bag
- POST /bags
for create bag
Package
- POST /packages
for create package - PUT /packages
for update adding packages into bag
Shipment
- POST /shipments
for distribute shipments
http://localhost:8080/swagger-ui/index.html
-
Docker :
- Compile project with Java 11
- Run with Docker comments , go to project folder and run this commands:
$ docker-compose -f docker-compose.yml up -d -
With IDE :
- Run all images without fleet-management image in docker-compose.yml file and run project
- You can see curl command in http://localhost:8080/swagger-ui.html
