Skip to content

django-cassandra backend using django-rest-framework

Notifications You must be signed in to change notification settings

AkshayDawkhar/inventory

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Inventory

This Django API is designed to maintain and build products using the Cassandra NoSQL database.

Installation

required

python=>3 Cassandra

  git clone https://github.com/AkshayDawkhar/inventory
  cd inventory 

create virtual environment

  virtualenv venv

Activate

linux windows
source venv/bin/activate venvironment\Scripts\activate

requirements

pip install -r requirements.txt

runserver

python sync_cassandra.py 
cd inventory
python manage.py runserver

API Reference

Products

GET all products

  GET /products
Parameter Type Description

create new product

  POST /products
Parameter Type Description
category string Required
color string default black
dname string Required. name to display
required_items list[uuid] pid of raw needed to build
required_items_no list[INT] number of raw needed as per required_items
{
  "category": "PCB",
  "dname": "RS 1G",                             
  "required_items": [
    "2b955212-9f1a-11ed-a285-f889d2e645af",     
    "59851e5a-9f1a-11ed-b500-f889d2e645af"
    
  ],
  "required_items_no": [4,6]      
}

GET product

  GET /products/${uuid:pid}
Parameter Type Description

move product to trash

  DELETE /products/${uuid:pid}
Parameter Type Description

update product

  PUT /products/${uuid:pid}
Parameter Type Description
category string Required
color string default black
dname string Required. name to display
required_items list[uuid] pid of raw needed to build
required_items_no list[INT] number of raw needed as per required_items
{
  "category": "PCB",
  "dname": "RS 1G", 
  "color":"red",
  "required_items": [
    "2b955212-9f1a-11ed-a285-f889d2e645af",
    "59851e5a-9f1a-11ed-b500-f889d2e645af"
    
  ],
  "required_items_no": [4,6]
}

Trash

GET all Trashed product

  GET /trash/
Parameter Type Description

GET Trashed product

  GET /trash/${uuid:pid}
Parameter Type Description

restore trashed product

  POST /trash/${uuid:pid}
Parameter Type Description

delete trashed product before 30 days

  DELETE /trash/${uuid:pid}
Parameter Type Description
pid UUID Required. pid to

Build

GET all build product details

  GET /build/
Parameter Type Description

get max possible product can build in available raw

  GET /build/${uuid:pid}
Parameter Type Description

build product

  POST /build/${uuid:pid}
Parameter Type Description
build_no INT Required. number of product to build

discard product

  DELETE /build/${uuid:pid}
Parameter Type Description
discard_no INT Required. number of product to discard

get build details

  GET /build/edit/${uuid:pid}
Parameter Type Description

Edit product build info

  PUT /build/edit/${uuid:pid}
Parameter Type Description
build_no INT Required. to set product to build number

Required

  GET /build/required/${uuid:pid}
Parameter Type Description

Account

GET all workers account

  GET /account/
Parameter Type Description

create worker account

  POST /account/
Parameter Type Description
f_name Text required. first name of user
l_name Text required. last name of user
mail mail required. unregistered mail for user
username Text required. username for user
password Text required. password for user

GET workers account

  GET /account/${string:username}
Parameter Type Description

Edit workers account

  PUT /account/${string:username}
Parameter Type Description
f_name Text required. first name of user
l_name Text required. last name of user

Login workers account

  POST /account/login/
Parameter Type Description
username Text required.
password Text required.

GET all admin account

  GET /account/admin
Parameter Type Description

create admin account

  POST /account/admin/
Parameter Type Description
f_name Text required. first name of user
l_name Text required. last name of user
mail mail required. unregistered mail for user
username Text required. username for user
password Text required. password for user

GET admin account

  GET /account/admin/${string:username}
Parameter Type Description

Edit admin account

  PUT /account/admin/${string:username}
Parameter Type Description
f_name Text required. first name of user
l_name Text required. last name of user

Login admin account

  POST /account/admin/login/
Parameter Type Description
username Text required.
password Text required.

Order

GET all workers order

  GET /order/
Parameter Type Description

create order

  POST /order/edit/
Parameter Type Description
timestamp timestamp required. on which date
numbers INT required. how many

Delete order

  DELETE /order/edit/${uuid:pid}
Parameter Type Description
timestamp timestamp required. on which date
numbers INT required. how many

Edit order

  PUT /order/edit/${string:username}
Parameter Type Description
timestamp timestamp required. on which date
numbers INT required. how many

complete order

  POST /order/${uuid:pid}
Parameter Type Description
timestamp timestamp required. on which date
numbers INT required. how many

Releases

No releases published

Packages

No packages published

Languages