class Order(db.Model): id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(80), nullable=False) mobile_num = db.Column(db.Numeric(10, 2), nullable=False) quantity = db.Column(db.Integer, default=0) order_place = db.Column(db.String(1000), nullable=False) ddate = db.Column(db.DateTime, nullable=False, default=datetime.now) def __repr__(self): return '<Order %r>' % self.order_place
class Review(db.Model): id = db.Column(db.Integer, primary_key=True, autoincrement=True) username = db.Column(db.String(80), nullable=False) body = db.Column(db.String(200), nullable=False) rating = db.Column(db.Numeric(2, 1), default=0) timestamp = db.Column(db.DateTime, nullable=False, default=datetime.utcnow) product_id = db.Column(db.Integer, db.ForeignKey('addproduct.id'), nullable=False)
class Seller(db.Model, UserMixin): id = db.Column(db.Integer(), primary_key=True) username = db.Column(db.String(255), nullable=False, unique=True) email = db.Column(db.String(80), nullable=False, unique=True) password = db.Column(db.Text(), nullable=False) comm_type = db.Column(db.String(25), nullable=False) products = db.relationship("Product", backref="seller", lazy=True) def __repr__(self): return "seller {}".format(self.username)
class Shipper(db.Model): id = db.Column(db.Integer, primary_key=True) shipper_name = db.Column(db.String(100)) date_of_birth = db.Column(db.DateTime, nullable=False) address = db.Column(db.String(100)) ship_date = db.Column(db.DateTime, nullable=False, default=datetime.datetime.utcnow) create_date = db.Column(db.DateTime, nullable=False, default=datetime.datetime.utcnow) delete_date = db.Column(db.DateTime, nullable=False, default=datetime.datetime.utcnow) update_date = db.Column(db.DateTime, nullable=False, default=datetime.datetime.utcnow) order_id = db.Column(db.Integer, db.ForeignKey('orders.id'))
class feedback(db.Model): id = db.Column(db.Integer, primary_key=True) cust_name = db.Column(db.String(20), unique=False, nullable=False) cust_phone = db.Column(db.Integer, unique=False, nullable=False) cust_email = db.Column(db.String(20), unique=False, nullable=False) res = db.Column(db.String(500), unique=False, nullable=False) pro_pur = db.Column(db.String(20), unique=False, nullable=False) def __repr__(self): return '<feedback %r>' % self.cust_name
class User(db.Model): id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(30), unique=False, nullable=False) username = db.Column(db.String(80), unique=True, nullable=False) email = db.Column(db.String(120), unique=True, nullable=False) password = db.Column(db.String(180), unique=False, nullable=False) profile = db.Column(db.String(180), unique=False, nullable=False, default='profile.jpg') def __repr__(self): return '<User %r>' % self.username
class Category(db.Model): id_category = db.Column(db.Integer, primary_key=True) name_category = db.Column(db.String(80), unique=True, nullable=False) image_category = db.Column(db.String(120), unique=False, nullable=False) description_category = db.Column(db.String(300), unique=False, nullable=False) def __repr__(self): return '<Category %r>' % self.name_category
class CustomerOrder(db.Model): id = db.Column(db.Integer, primary_key=True) invoice = db.Column(db.String(20), unique=True, nullable=False) status = db.Column(db.String(20), default='Pending', nullable=False) customer_id = db.Column(db.Integer, unique=False, nullable=False) date_created = db.Column(db.DateTime, default=datetime.utcnow, nullable=False) orders = db.Column(JsonEcodedDict) def __repr__(self): return'<CustomerOrder %r>' % self.invoice
class User(UserMixin, db.Model): id = db.Column(db.Integer, primary_key=True) username = db.Column(db.String(15), unique=True, nullable=False) email = db.Column(db.String(120), unique=True, nullable=False) password_hash = db.Column(db.String(128)) password = db.Column(db.String(60), nullable=False) university = db.Column(db.String(100), nullable=True) address_house = db.Column(db.String(50), nullable=False) address_street = db.Column(db.String(100), nullable=True) address_towncity = db.Column(db.String(50), nullable=True) address_postcode = db.Column(db.String(10), nullable=False) def __repr__(self): return f"User('{self.username}', '{self.email}')" @property def password(self): raise AttributeError('password is not a readable attribute') @password.setter def password(self, password): self.password_hash = generate_password_hash(password) def verify_password(self, password): return check_password_hash(self.password_hash, password)
class reqpart(db.Model): id = db.Column(db.Integer, primary_key=True) cust_name = db.Column(db.String(20), unique=False, nullable=False) cust_phone = db.Column(db.Integer, unique=False, nullable=False) cust_email = db.Column(db.String(20), unique=False, nullable=False) part = db.Column(db.String(20), unique=False, nullable=False) v_brand = db.Column(db.String(20), nullable=False) v_model = db.Column(db.String(20), nullable=False) def __repr__(self): return '<reqpart %r>' % self.cust_name
class Order(db.Model): id = db.Column(db.Integer, primary_key = True) invoice = db.Column(db.String(15), unique = True, nullable=False) status = db.Column(db.String(50), nullable = False, default = 'Pending') customer_id = db.Column(db.Integer, db.ForeignKey('customer.id'), nullable=False) order_date = db.Column(db.DateTime, nullable = False, default = datetime.utcnow) orders = db.Column(jsonEncodedDict) def __repr__(self): return '<Order %r>' % self.invoice
class Product(db.Model): id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(30), nullable=False) price = db.Column(db.Numeric(10, 2), nullable=False) discount = db.Column(db.Integer, nullable=False, default=0) stock = db.Column(db.Integer, nullable=False) description = db.Column(db.String(300), nullable=False) color = db.Column(db.String(30), nullable=False) image_1 = db.Column(db.String(150), nullable=False, default='image.jpg') image_2 = db.Column(db.String(150), nullable=False, default='image.jpg')
class Addcourse(db.Model): id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(80), nullable=False) price = db.Column(db.DECIMAL(asdecimal=False), nullable=False) description = db.Column(db.Text, nullable=False) image_1 = db.Column(db.String(150), nullable=False, default='image.jpg') image_2 = db.Column(db.String(150), nullable=False, default='image.jpg') def __repr__(self): return '<Addcourse %r>' % self.name
class Item(db.Model): id = db.Column(db.Integer, primary_key=True) item_name = db.Column(db.String(50),nullable=False) description = db.Column(db.String(120), nullable=False) price = db.Column(db.Numeric(10,2), nullable=False) image_file = db.Column(db.String(30), nullable=False, default='default.jpg') stock_level = db.Column(db.Integer, nullable=False) maker_id = db.Column(db.Integer, db.ForeignKey('maker.id'), nullable=False) def __repr__(self): return f"Item('{self.item_name}', '{self.description}', '{self.price}', '{self.stock_level}')"
class Supplier(db.Model): id = db.Column(db.Integer(), primary_key=True) name = db.Column(db.String(80), nullable=False, unique=True) email = db.Column(db.String(80), nullable=False, unique=True) phone_contact = db.Column(db.Text(10), nullable=False) location = db.Column(db.String(80), nullable=False, unique=True) type = db.Column(db.String(80), nullable=False) products = db.relationship("Product", backref="supplier", lazy=True) def __repr__(self): return "supplier {}".format(self.name)
class payment(db.Model): id = db.Column(db.Integer(), primary_key=True) total_price = db.Column(db.Integer()) user_cart = db.Column(db.String(25), db.ForeignKey('user.username')) address = db.Column(db.String(100), nullable=False) card_no = db.Column(db.String(16), nullable=False) card_exp_date = db.Column(db.String(5), nullable=False) name_on_card = db.Column(db.String(20), nullable=False) def __repr__(self): return f"payment('{self.total_price}', '{self.name_on_card}')"
class Categories(db.Model): categoryid = db.Column(db.Integer, primary_key=True, autoincrement=True) category_name = db.Column(db.String(100), nullable=False) category_desc = db.Column(db.String(255), nullable=False) def __init__(self, category_name, category_desc): self.category_name = category_name self.category_desc = category_desc def __repr__(self): return f"Category: '{self.category_name}' /n", \ f"Description: '{self.category_desc}' /n"
class Book(db.Model): id = db.Column(db.Integer, primary_key=True) title = db.Column(db.String(50),nullable=False) description = db.Column(db.String(120), nullable=False) #publication_date = db.Column(db.DateTime, nullable=False, default=datetime.utcnow) price = db.Column(db.Numeric(10,2), nullable=False) image_file = db.Column(db.String(30), nullable=False, default='default.jpg') stock_level = db.Column(db.Integer, nullable=False) author_id = db.Column(db.Integer, db.ForeignKey('author.id'), nullable=False) def __repr__(self): return f"Book('{self.title}', '{self.description}', '{self.price}', '{self.stock_level}')"
class CustomerInvoice(db.Model): id = db.Column(db.Integer, primary_key=True) invoice = db.Column(db.String(20), unique=True, nullable=False) status = db.Column(db.String(20), default='Menunggu Konfirmasi', nullable=False) resi = db.Column(db.String(80), default='Belum Tersedia', nullable=False) # orders = db.Column(JsonEcodedDict) # def __repr__(self): return '<CustomerOrder %r>' % self.invoice
class Game(db.Model): id = db.Column(db.Integer, primary_key=True) title = db.Column(db.String(50),nullable=False) description = db.Column(db.String(120), nullable=False) price = db.Column(db.Numeric(10,2), nullable=False) image_file = db.Column(db.String(30), nullable=False, default='default.jpg') stock_level = db.Column(db.Integer, nullable=False) company = db.Column(db.String(30), nullable=False) review = db.Column(db.String(250), nullable=False) def __repr__(self): return f"Book('{self.title}', '{self.description}', '{self.price}', '{self.stock_level}')"
class Purchases(db.Model): purchase_id = db.Column(db.Integer, primary_key=True) purchase_user_id = db.Column( db.Integer, db.ForeignKey('user.id'), nullable=False) purchase_timestamp = db.Column(db.Integer, nullable=False) purchase_ship_to = db.Column(db.String(200), nullable=False) purchase_payment = db.Column(db.String(25), nullable=False) items_bought = db.relationship( 'Purchased_items', backref='order_details', lazy='dynamic') def __repr__(self): return f"Purchases('{self.purchase_id}', '{self.purchase_user_id}', '{self.purchase_timestamp}', '{self.purchase_ship_to}', '{self.purchase_payment}')"
class Record(db.Model): id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(100), nullable=False) artist = db.Column(db.String(100)) price = db.Column(db.Numeric(6, 2), nullable=False) description = db.Column(db.String(4000)) picture = db.Column(db.String(30), default='default.jpg') year = db.Column(db.Integer) genre = db.Column(db.String(30)) def __repr__(self): return f"Record('{self.name}', '{self.artist}')"
class Product(db.Model): product_id = db.Column(db.Integer(), primary_key=True) prod_name = db.Column(db.String(255), nullable=False, unique=True) selling_price = db.Column(db.Integer(), nullable=False) cost_price = db.Column(db.Integer(), nullable=False) discount = db.Column(db.Integer(), nullable=False) stock = db.Column(db.Integer(), nullable=False) prod_type = db.Column(db.String(80), nullable=False) seller_id = db.Column(db.Integer(), db.ForeignKey('seller.id')) supplier_id = db.Column(db.Integer(), db.ForeignKey('supplier.id')) def __repr__(self): return "product {}".format(self.prod_name)
class Warehouse(db.Model): id = db.Column(db.Integer, primary_key=True, autoincrement=True) name = db.Column(db.String(80)) address = db.Column(db.String(80)) remark = db.Column(db.String(512)) def __init__(self, name, address, remark): self.name = name self.address = address self.remark = remark def __repr__(self): return '<Warehouse %d %s>' % (self.id, self.state)
class Register(db.Model, UserMixin): id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(80), unique=False, nullable=False) username = db.Column(db.String(80), unique=True, nullable=False) email = db.Column(db.String(120), unique=True, nullable=False) password = db.Column(db.String(200), unique=False, nullable=False) contact = db.Column(db.String(80), unique=False, nullable=False) date_created = db.Column(db.DateTime, nullable=False, default=datetime.utcnow) def __repr__(self): return '<Register %r>' % self.name
class Products(db.Model): __tablename__ = 'items' id = db.Column(db.Integer, primary_key=True, unique=True) title = db.Column(db.String(256), index=True) image_url = db.Column(db.String(256), index=True) caption = db.Column(db.Text) price = db.Column(db.Float) def __init__(self, title, image_url, caption, price): self.title = title self.image_url = image_url self.caption = caption self.price = price
class W_item(db.Model): id = db.Column(db.Integer, primary_key=True) item_name = db.Column(db.String(50), nullable=False) description_1 = db.Column(db.String(120), nullable=False) description_2 = db.Column(db.String(120), nullable=False) price = db.Column(db.Numeric(10, 2), nullable=False) image_file = db.Column(db.String(30), nullable=False, default='default.jpg') size = db.Column(db.String(50), nullable=False, default='default.jpg') def __repr__(self): return f"Item('{self.item_name}', '{self.description_1}', '{self.description_2}', '{self.price}', '{self.size}')"
class Phone(db.Model): id = db.Column(db.Integer, primary_key=True) model = db.Column(db.String(50),nullable=False) description = db.Column(db.String(120), nullable=False) mass = db.Column(db.Numeric(10,2), nullable=False) ram = db.Column(db.Integer, nullable=False) release_date = db.Column(db.DateTime, nullable=False, default=datetime.utcnow) price = db.Column(db.Numeric(10,2), nullable=False) image_file = db.Column(db.String(30), nullable=False, default='default.jpg') stock_level = db.Column(db.Integer, nullable=False) manufacturer_id = db.Column(db.Integer, db.ForeignKey('manufacturer.id'), nullable=False) def __repr__(self): return f"Phone('{self.model}', '{self.description}', '{self.mass}', '{self.ram}', '{self.publication_date}', '{self.price}', '{self.stock_level}')"
class GoodType(db.Model): id = db.Column(db.INTEGER, primary_key=True, autoincrement=True) name = db.Column(db.String(80), unique=True) remark = db.Column(db.String(512)) description = db.Column(db.String(512)) def __init__(self, name, remark, description): self.name = name self.remark = remark self.description = description def __repr__(self): return '<GoodType %d %s>' % (self.id, self.name)
class Addproduct(db.Model): id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(80), nullable=False) price = db.Column(db.Integer, nullable=False) discount = db.Column(db.Integer, default=None) stock = db.Column(db.Integer, nullable=False) origin = db.Column(db.Text, nullable=False) condition = db.Column(db.String(80), nullable=False) description = db.Column(db.Text, nullable=False) install_service = db.Column(db.String(10), nullable=False) colors = db.Column(db.Text, nullable=True) brand_id = db.Column(db.Integer, db.ForeignKey('brand.id'), nullable=True) brand = db.relationship('Brand', backref=db.backref('brands', lazy=True)) category_id = db.Column(db.Integer, db.ForeignKey('category.id'), nullable=True) category = db.relationship('Category', backref=db.backref('category', lazy=True)) image_1 = db.Column(db.String(150), nullable=False, default='image.jpg') image_2 = db.Column(db.String(150), nullable=True, default='image.jpg') image_3 = db.Column(db.String(150), nullable=True, default='image.jpg') certificate = db.Column(db.String(150), nullable=True) yt = db.Column(db.String(100), nullable=True) def __repr__(self): return '<Addproduct %r>' % self.name