Skip to content
Snippets Groups Projects
Commit eddfddab authored by y2-youssef's avatar y2-youssef
Browse files

Upload New File

parent 720d561b
No related branches found
No related tags found
No related merge requests found
# Items has a field called "Set" which contains a number to find related items of sets
# Number, UID, Name/Description, Price, Sets, LISTED Default = True, Tags
from database.connect import connection, base
import sqlalchemy as db
from sqlalchemy.orm import relationship
from datetime import date
class ItemModel(base):
__tablename__ = "item"
id = db.Column(db.Integer, primary_key=True)
uid = db.Column(db.String(20), nullable=False)
name = db.Column(db.String(50), nullable=False)
description = db.Column(db.String(300), nullable=False)
price = db.Column(db.Float, nullable=False)
setid = db.Column(db.Integer, db.ForeignKey("itemset.id"), nullable=False)
listed = db.Column(db.Boolean, default=True, nullable=False)
tag = db.Column(db.String(200), nullable=False)
location = db.Column(db.Integer, db.ForeignKey("location.id"), nullable=False)
url = db.Column(db.String(200), nullable=False)
def __init__(
self, uid: str, name: str, description: str, price: float, setid: int, listed: bool,tag: str,location: int, customID: 0, url: None):
self.uid = uid
self.name = name
self.description = description
self.price = price
self.setid = setid
self.listed = listed
self.tag = tag
self.location = location
self.url = url
if customID != 0:
self.id = customID
def __repr__(self):
return "<Item %r>" % self.id
class Item:
def __init__(self):
# Get connection to database as session
engine, base, session, meta = connection()
self.session = session
def get_items(self) -> list:
"""
Get items from database
Returns:
list: List of all items
"""
items = self.session.query(ItemModel).all()
return items
def get_item(self, item_id: int) -> ItemModel:
"""
Get item from database by id
Args:
item_id (int): Item ID to get
Returns:
ItemModel: ItemModel object
"""
item = self.session.query(ItemModel).filter_by(id=item_id).first()
return item
def add_item(self, item: ItemModel) -> None:
"""
Add item to database
Args:
item (ItemModel): ItemModel object
"""
self.session.add(item)
self.session.commit()
def delete_item(self, item: ItemModel) -> None:
"""
Remove item from database
Args:
item (ItemModel): ItemModel object
"""
self.session.delete(item)
self.session.commit()
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment