Files
api2/api/models/designer.py
T

65 lines
2.3 KiB
Python

# coding=UTF-8
from api.extensions import db
from api.lib.slugify import slugify
class Designer(db.Model):
__tablename__ = 'designers'
id = db.Column('designerid', db.Integer, primary_key=True)
commission = db.Column(db.Integer(), nullable=False)
commission_resale = db.Column(db.Integer(), nullable=False)
currency = db.Column(db.String(3), nullable=False)
name = db.Column(db.String(100), nullable=False)
no_follow = db.Column(db.Integer(), nullable=True, default=0)
path = db.Column(db.String(100), nullable=False)
sort_desc = db.Column(db.Boolean(), nullable=False, default=False)
territory = db.Column(db.String(2), nullable=False)
username = db.Column(db.String(100), nullable=False)
visible_designerpage = db.Column(db.Integer(), nullable=False, default=1)
visible_list = db.Column(db.Integer(), nullable=False, default=1)
visible_productpage = db.Column(db.Integer(), nullable=False, default=1)
visible_search = db.Column(db.Integer(), nullable=False, default=1)
pricepremium = db.Column(db.Numeric(), nullable=False, default=0)
def __init__(self, name, username, territory, currency, *args, **kwargs):
super(Designer, self).__init__(*args, **kwargs)
self.name = name
self.username = username
self.territory = territory
self.currency = currency
self.commission = 0
self.commission_resale = 0
self.path = slugify(name)
@property
def send_to_bottom(self):
if self.sort_desc:
return 1
return 0
@property
def exclude_from_overview(self):
if self.visible_list == 1:
return 0
return 1
def to_json(self):
return {
'id': self.id,
'commission': self.commission,
'commission_resale': self.commission_resale,
'currency': self.currency,
'name': self.name,
'no_follow': self.no_follow,
'path': self.path,
'sort_desc': 1 if self.sort_desc else 0,
'territory': self.territory,
'username': self.username,
'visible_designerpage': self.visible_designerpage,
'visible_list': self.visible_list,
'visible_productpage': self.visible_productpage,
'visible_search': self.visible_search,
}