Skip to content

This shipping mate API will guide you to managing and handling shipping orders

License

Notifications You must be signed in to change notification settings

crisywini/ship-m8

Repository files navigation

Java CI with Maven

Ship-M8 🚚

This order processing microservice will handle all aspects of order management. When a user places an order, it will process the order, handle payment processing (you can use a simulated payment system), and manage the order status. This microservice can include features like:

  • Order creation and submission
  • Order status tracking
  • Payment processing (simulated for demonstration purposes)
  • Order history for each user

Usage

Installed Maven and Java 17 and Kafka.

To start Kafka:

kafka-server-start.sh ~/kafka_2.12-3.5.1/config/kraft/server.properties

To Fix IPV6 error in WSL2:

sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1

And

sudo sysctl -w net.ipv6.conf.default.disable_ipv6=1

And change config servers in config/server.properties

listeners=PLAINTEXT://localhost:9092

Api Documentation

Can be found at:

http://localhost:8082/swagger-ui/index.html

Event Driven Communication

Use case

When a Shopper creates an Order

Then the message Order Processed will be created

And the message Order Processed will be sent to Productopolis

And Ship-M8 will listen to the message Order Failed in case of the order was not successfully created (i.e, the product did not have a correct id or its amount to buy was less than 0 or it was higher than the stock)

Database Schema

Database_schema

Packages

No packages published

Languages