Skip to content

kamize123/TK_Ecommerce

Repository files navigation

Ecommerce TK System

Overall view

Ecommerce Architect.svg

List what has been used

  • Spring Boot, web framework, makes it easy to create stand-alone, production-grade Spring based Applications
  • AWS Cloud, using AWS SDK for Java 2.x
    • S3, etc
  • Apache Kafka, a distributed and fault-tolerant stream processing system used for event-driven communication between microservices.
  • Spring Data Redis, provides an implementation of Spring Framework’s Cache Abstraction.
  • Docker and docker-compose, for containerization
  • Spring Data JPA provides repository support for the Jakarta Persistence API
  • JWT for providing authentication, user management, fine-grained authorization
  • MySQL for storing data
  • ElasticSearch , A distributed search and analytics engine used for quickly querying and analyzing large volumes of data.
  • Kibina , A data visualization tool for ElasticSearch, providing real-time analytics and visual insights.
  • [Zookeeper](Apache ZooKeeper) , A centralized service for maintaining configuration information, naming, and providing distributed synchronization.
  • GCP , For additional cloud services and infrastructure as needed for scalability, storage, and analytics.

Prerequisite

  • Java 17
  • MySql 8
  • Maven
  • Docker
  • GNU Make
  • WSL (if using Windows)

Setup

1. Clone the Repository

Start by cloning the repository to your local machine:

git clone https://github.com/haons211/TK_Ecommerce.git
cd  TK_Ecommerce/

2. Docker Compose-Up

docker compose up -d

3. Run

./mvnw spring-boot:run

Information

VNPay

Official Document

Pasted image 20241112173454.png![[Pasted image 20241112173454.png]]

API Endpoints
Endpoint HTTP Method Description
/api/v1/payments /create_payment_url POST Creates a new payment URL for initiating a payment
/api/v1/payments /vnpay_ipn GET Handles the VNPAY Instant Payment Notification (IPN) callback
/api/v1/payments /vnpay-payment-return GET Processes the VNPAY payment return URL after transaction

Sample Data For Testing

9704198526191432198
NGUYEN VAN A
07/15
123456

GHN

Official Document

API Endpoints
Endpoint HTTP Method Description
/v1/shop/register POST Registers a new shop with GHN
/v1/shipping-order/create POST Creates a new shipping order with pickup and delivery details
/v1/shipping-order/cancel POST Cancels an existing shipping order
/v1/shipping-order/detail GET Retrieves details of a specific shipping order
/v1/shipping-order/leadtime GET Estimates lead time (delivery time) based on location and service type
/v1/shipping-order/fee GET Calculates shipping fee based on weight, distance, and service type
/v1/shipping-order/status GET Tracks the current status of a shipping order
/v1/ward GET Retrieves a list of wards in a specific district
/v1/district GET Retrieves a list of districts in a specific province
/v1/province GET Retrieves a list of provinces available in the GHN service
/v1/store GET Retrieves details of the store or origin location information
/v1/address POST Validates or normalizes an address before creating an order
/v1/shipping-order/return POST Creates a return order for an already delivered or undelivered order

About

Ecomerce is built by Springboot

Resources

License

Stars

1 star

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages