Skip to content
@Fawry-Internship

Fawry-Internship

🛒 Ecommerce Project Systems Overview

Welcome to our Ecommerce project! Our platform consists of several interconnected systems, each serving a specific purpose to create a robust and efficient Ecommerce experience. Below is an overview of the systems integrated into our project:

🖥️ User Interfaces

Experience intuitive banking with our user-friendly interface.

Immerse yourself in a visually stunning user interface designed to streamline navigation and enhance user engagement.

📡 APIs

  • Functionality:
    • Account Management: Handles creation and management of customer accounts.
    • Transaction Processing: Facilitates financial transactions such as deposits, withdrawals, and balance inquiries.
    • Security: Ensures secure authentication and authorization mechanisms for user accounts.

ERD

erDiagram
    ACCOUNTS {
        Long id PK
        String card_number "Unique"
        String name 
        String email
        String password 
        double balance 
        boolean enable "Active or Not"
    }
     ACCOUNTS ||--o{ TRANSACTIONS : have
    TRANSACTIONS {
        Long id PK
        Long account_id FK "fk referencing ACCOUNTS.id"
        double amount
        String transaction_type
        LocalDateTime created_at
        String payment_method "credit card"
    }
Loading
  • Functionality:
    • Coupon Generation: Generates unique discount codes with configurable usage limits and expiration dates.
    • Coupon Redemption: Allows customers to apply coupons during checkout to receive discounts on their orders.
    • Tracking: Logs coupon usage and provides reports on coupon effectiveness.

ERD

 erDiagram
     COUPONS {
        long id PK
        string code "Unique"
        string discount_type "e.g., percentage, fixed amount"
        double discount_value
        datetime valid_from 
        datetime valid_to 
        int usage_limit
        int remaining_count
        datetime created_at 
    }
    COUPONS ||--o{ CONSUMPTION_HISTORY : has
    CONSUMPTION_HISTORY {
        long id PK
        datetime consumption_date 
        float discount_value
        long order_id 
        string customer_email
        long coupon_id FK "fk referencing  COUPONS.id"
    }
Loading
  • Functionality:

    • Order Management: Manages the lifecycle of orders from creation to fulfillment.
    • Inventory Control: Tracks product availability and updates inventory levels upon order placement.
    • Payment Processing: Handles payment transactions securely and ensures order completion upon successful payment.

    ERD

erDiagram
    ORDERS {
        long id PK
        long product_code
        string customer_email
        datetime order_date 
        double price
        string payment_method "(credit)"
        datetime created_at
        string coupon_code
    }
Loading
  • Functionality:

    • Product Catalog: Maintains a comprehensive catalog of products available for sale.
    • Product Information: Stores detailed product information including descriptions, prices, and images.
    • Product Management: Supports CRUD operations for managing products within the catalog.

    ERD

erDiagram
    PRODUCTS {
        long id pk
        string code "unique"
        string name 
        string description
        double price
        long category_id "fk referencing CATEGORIES.id"
        string brand
        string image_url
        datetime created_at
        datetime updated_at
        boolean active
    }
    PRODUCTS }o--|| CATEGORIES : belong_to
    CATEGORIES{
        long id pk
        string name 
        string description
    }
Loading
  • Functionality:

    • Store Management: Allows creation and management of storefronts or warehouses.
    • Product Display: Displays products within the store and enables browsing and search functionalities.
    • Inventory Management: Tracks stock levels and handles stock replenishment and adjustments.

    ERD

erDiagram
    STORE {
        long id PK
        string name 
        string address
    }
    STORE ||--|{ STOCK : has
    STOCK {
        long id PK
        int quantity
        long product_code 
        long store_id FK "fk referencing STORE.id"
        datetime created_at 
        datetime updated_at 
    }
    STOCK ||--|{ STOCK_CONSUMPTION_HISTORY : has
    STOCK_CONSUMPTION_HISTORY {
        Long id pk
        Long store_id
        Long stock_id FK "fk referencing STOCK.id"
        int quantity_before_update
        int quantity_after_update
        LocalDateTime created_at
    }
Loading
  • Functionality:

    • Notification Handling: Sends notifications to users regarding order status updates, promotions, and other relevant information.
    • Event Listening: Listens for events such as order placement, payment confirmation, and coupon redemption to trigger notifications.

    ERD

erDiagram
    EMAILS {
        Long id PK
        String to
        String from
        String subject
        String product
        String price
        LocalDate creation
        Status status "success,faild"
   }
Loading
  • Functionality:
    • Manage Admin Users: Provides functionality to add, activate, and deactivate admin users.
    • View List of Users: Allows administrators to view a list of users for administrative purposes.

ERD

erDiagram
    USERS {
        long id PK
        string email "Unique"
        string password 
        boolean enabled "Active or Not"
    }
Loading

🌟 Meet Our Team

Sameh Tarek
Sameh Tarek
Abdelrahman Reda
Abdelrahman Reda
Abdulrahman Naqeb
Abdulrahman Naqeb
Esraa Mabrouk
Esraa Mabrouk
Fouad Abdelhalim
Fouad Abdelhalim
Hajar Refaat
Hajar Refaat

Popular repositories Loading

  1. Bank-API Bank-API Public

    This project is a simple banking system API that allows users to authenticate, register, deposit money into their accounts, withdraw money from their accounts, and view their account balance and tr…

    Java

  2. User-API User-API Public

    This project is a user management API that allows users to authenticate, register, activate/deactivate users, and retrieve a list of all users. It is built using Java Spring Boot and MySQL database.

    Java

  3. Notification-API Notification-API Public

    Java

  4. Store-API Store-API Public

    Java

  5. .github .github Public

  6. Coupon-API Coupon-API Public

    Java

Repositories

Showing 10 of 10 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…