Exemple #1
0
class Reservation(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    item_id = db.Column(db.Integer, db.ForeignKey('item.id'), nullable=False)
    user_id = db.Column(db.Integer)
    state = db.Column(db.String(50), nullable=False)
    date_start = db.Column(db.DateTime, nullable=False)
    date_end = db.Column(db.DateTime, nullable=False)
    date_inserted = db.Column(db.DateTime,
                              nullable=False,
                              default=datetime.utcnow)
    date_updated = db.Column(db.DateTime,
                             onupdate=datetime.utcnow,
                             default=datetime.utcnow)
Exemple #2
0
class SalesModel(db.Model):
    id= db.Column(db.Integer,primary_key=True)
    inventory_id = db.Column(db.Integer, db.ForeignKey('inventory.id'), nullable=False)
    # inventory_id = db.Column(db.Integer, db.ForeignKey('inventory.id'), nullable=False)
    # inventory_id = db.Column(db.Integer,nullable=False)f
    quantity  = db.Column(db.Integer,nullable=False)




    def insert_to_db(self):
        db.session.add(self)
        db.session.commit()
Exemple #3
0
class Tag(SpecialBase):
    __tablename__ = "tag"

    parent_id = db.Column(db.Integer,
                          db.ForeignKey('tag.id'),
                          nullable=True,
                          unique=False)
    children = db.relationship('Tag', lazy=True)

    def __repr__(self):
        return f"Tag('{self.name}')"

    db.UniqueConstraint('name', name='tag_uq')
Exemple #4
0
class Media(db.Model):
    __tablename__ = "medias"

    id = db.Column(db.Integer, primary_key=True)
    caption = db.Column(db.String(), nullable=False)
    media_url = db.Column(db.String(), nullable=False)
    permalink = db.Column(db.String(), nullable=True, unique=True)
    thumbnail_url = db.Column(db.String(), nullable=False, unique=True)
    timestamp = db.Column(db.Datetime, nullable=False, default=datetime.utcnow)
    user_id = db.Column(db.Integer, db.ForeignKey("users.id"), nullable=False)

    def __repr__(self):
        return f"<Media {self.id}>"
Exemple #5
0
class EnrollPaymentsModel(db.Model):
    __tablename__ = 'enroll_payments'
    id = db.Column(db.Integer, primary_key=True)
    ube_id = db.Column(db.Integer,
                       db.ForeignKey('user_bootcamp_enrollments.id'))
    amount = db.Column(db.Float, nullable=False)
    msis_dn = db.Column(db.String, nullable=False)
    mpesa_ref = db.Column(db.String, nullable=False)

    # add new users
    def newUsers(self):
        db.session.add(self)
        db.session.commit()
Exemple #6
0
class Profile(db.Model):
    __tablename__ = "profiles"

    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(), nullable=False, unique=True)
    lastname = db.Column(db.String(), nullable=False)
    biography = db.Column(db.String(), nullable=False)
    profilepic = db.Column(db.String(), nullable=False, unique=True)
    user_id = db.Column(db.Integer, db.ForeignKey("users.id"), nullable=False)
    

    def __repr__(self):
        return f"<Profile {self.username}>"
Exemple #7
0
class IOCode(db.Model):
    __tablename__ = 'iocodes'
    id = db.Column('id', db.String(16), primary_key=True)
    cost_center_id = db.Column('cost_center_id',
                               db.String(),
                               db.ForeignKey('cost_centers.id'),
                               nullable=False)
    cost_center = db.relationship('CostCenter', backref=db.backref('iocodes'))
    mission_id = db.Column('mission_id',
                           db.Integer(),
                           db.ForeignKey('missions.id'),
                           nullable=False)
    mission = db.relationship('Mission', backref=db.backref('iocodes'))
    org_id = db.Column('org_id',
                       db.Integer(),
                       db.ForeignKey('orgs.id'),
                       nullable=False)
    org = db.relationship('Org', backref=db.backref('iocodes'))
    name = db.Column('name', db.String(255), nullable=False)

    def __repr__(self):
        return u'{}:{}'.format(self.id, self.name)
Exemple #8
0
class Post(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(100), nullable=False)
    date_posted = db.Column(db.DateTime,
                            nullable=False,
                            default=datetime.utcnow)
    content = db.Column(db.Text, nullable=False)
    user_id = db.Column(db.Integer, db.ForeignKey("user.id"), nullable=False)

    def __init__(self, title, content, author):
        self.title = title
        self.content = content
        self.user_id = author
Exemple #9
0
class Store(db.Model):
    __tablename__ = "stores"

    id = db.Column(db.Integer, primary_key=True)
    storename = db.Column(db.String(), nullable=False, unique=True)
    firstname = db.Column(db.String(), nullable=False)
    lastname = db.Column(db.String(), nullable=False)
    user_id = db.Column(db.Integer, db.ForeignKey("users.id"), nullable=False)
    product = db.relationship("Product", backref="store")
    customer = db.relationship("Customer", backref="store")

    def __repr__(self):
        return f"<Store {self.storename}, {self.id}>"
class Rating(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    stars = db.Column(db.Float)
    username = db.Column(db.String, default='Anonymous')
    review = db.Column(db.String)
    doctor_id = db.Column(db.Integer, db.ForeignKey('doctor.id'),
                          nullable=False)

    def serialize(self):
        return {"id": self.id,
                "stars": self.stars,
                "username": self.username,
                "review": self.review}
Exemple #11
0
class List(db.Model):
    __tablename__ = "lists"

    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String())
    content = db.Column(db.String())
    board_id = db.Column(db.Integer,
                         db.ForeignKey("boards.id"),
                         nullable=False)
    cards = db.relationship("Card", backref="list", lazy="dynamic")

    def __repr__(self):
        return f"<List {self.title}>"
class Image(db.Model):
    __tablename__ = "images"
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    username = db.Column(db.String(),
                         db.ForeignKey("users.username"),
                         nullable=False)
    path = db.Column(db.String(), nullable=False)
    last_updated = db.Column(db.DateTime,
                             nullable=False,
                             default=datetime.utcnow)

    def __repr__(self):
        return f"<Image {self.id}>"
Exemple #13
0
class Comment(db.Model):
    __tablename__ = "Comment"
    id = db.Column(db.Integer, primary_key=True, nullable=False)
    masterpiece_id = db.Column(db.Integer, nullable=False)
    content = db.Column(db.Text, nullable=False)
    date = db.Column(db.DateTime, nullable=False)
    user_id = db.Column(db.Integer, db.ForeignKey('User.id', ondelete='CASCADE'), nullable=False)
    
    def __init__(self, masterpiece_id, content, date, user_id):
        self.masterpiece_id = masterpiece_id
        self.content = content
        self.date = date
        self.user_id = user_id
Exemple #14
0
class Org(db.Model):
    __tablename__ = 'orgs'
    id = db.Column('id', db.Integer(), primary_key=True, autoincrement=True)
    name = db.Column('name', db.String(), nullable=False)
    en_name = db.Column('en_name', db.String())
    head = db.Column('head', db.String())
    parent_id = db.Column('parent_id', db.Integer, db.ForeignKey('orgs.id'))
    children = db.relationship('Org',
                               backref=db.backref('parent', remote_side=[id]))
    strategies = db.relationship('Strategy', backref=db.backref('org'))

    def __repr__(self):
        return self.name
Exemple #15
0
class KPI(db.Model):
    __tablename__ = 'kpis'
    id = db.Column('id', db.Integer(), primary_key=True, autoincrement=True)
    created_by = db.Column('created_by', db.String())
    created_at = db.Column('created_at',
                           db.DateTime(),
                           server_default=func.now())
    updated_at = db.Column('updated_at',
                           db.DateTime(),
                           server_default=func.now())
    updated_by = db.Column('updated_by', db.String())
    name = db.Column('name', db.String, nullable=False)
    refno = db.Column('refno', db.String())
    intent = db.Column('intent', db.String())
    frequency = db.Column('frequency', db.Integer())
    unit = db.Column('unit', db.String())
    source = db.Column('source', db.String())
    available = db.Column('available', db.Boolean())
    availability = db.Column('availability', db.String())
    formula = db.Column('formula', db.String())
    keeper = db.Column('keeper', db.String(),
                       db.ForeignKey('staff_account.email'))
    note = db.Column('note', db.String())
    target = db.Column('target', db.String())
    target_source = db.Column('target_source', db.String())
    target_setter = db.Column('target_setter', db.String())
    target_reporter = db.Column('target_reporter', db.String())
    target_account = db.Column('target_account', db.String())
    reporter = db.Column('reporter', db.String())
    consult = db.Column('consult', db.String())
    account = db.Column('account', db.String())
    informed = db.Column('informed', db.String())
    pfm_account = db.Column('pfm_account', db.String())
    pfm_responsible = db.Column('pfm_resposible', db.String())
    pfm_consult = db.Column('pfm_consult', db.String())
    pfm_informed = db.Column('pfm_informed', db.String())
    strategy_activity_id = db.Column('strategy_activity_id',
                                     db.ForeignKey('strategy_activities.id'))
    reportlink = db.Column('reportlink', db.String())
Exemple #16
0
class StrategyTactic(db.Model):
    __tablename__ = 'strategy_tactics'
    id = db.Column('id', db.Integer(), primary_key=True, autoincrement=True)
    refno = db.Column('refno', db.String(), nullable=False)
    created_at = db.Column('created_at',
                           db.DateTime(),
                           server_default=func.now())
    content = db.Column('content', db.String(), nullable=False)
    strategy_id = db.Column('strategy_id',
                            db.Integer(),
                            db.ForeignKey('strategies.id'),
                            nullable=False)
    themes = db.relationship('StrategyTheme', backref=db.backref('tactic'))
Exemple #17
0
class Document(db.Model):
    __tablename__ = "documents"

    id = db.Column(db.Integer, primary_key=True)
    docname = db.Column(db.String())
    user_id = db.Column(db.Integer,
                        db.ForeignKey("accounts.id"),
                        nullable=False)

    # doc_images = db.relationship("DocImage", backref="document", lazy="dynamic")

    def __repr__(self):
        return f"<Document {self.docname}>"
Exemple #18
0
class Factura(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    cliente_id = db.Column(db.Integer, db.ForeignKey('cliente.id'))
    productos = db.relationship('Producto',
                                secondary=products_fac,
                                backref=db.backref('productosfacturados',
                                                   lazy='dynamic'))
    cantidad_productos = db.Column(db.Integer, default=0)
    valor_total = db.Column(db.Integer, default=0)
    metodo_pago = db.Column(db.String(50))

    def __repr__(self):
        return '<Nombre %r>' % self.nombre
Exemple #19
0
class Product(db.Model, CapacityMixin, InheritedAttributesMixin):
    """ A product (ticket or other item) which is for sale. """
    id = db.Column(db.Integer, primary_key=True)
    group_id = db.Column(db.Integer,
                         db.ForeignKey(ProductGroup.id),
                         nullable=False)
    name = db.Column(db.String, nullable=False)
    display_name = db.Column(db.String)
    description = db.Column(db.String)
    price_tiers = db.relationship('PriceTier',
                                  backref='parent',
                                  cascade='all',
                                  order_by='PriceTier.id')
    product_view_products = db.relationship('ProductViewProduct',
                                            backref='product')

    __table_args__ = (UniqueConstraint('name', 'group_id'), )

    @classmethod
    def get_by_name(cls, group_name, product_name):
        group = ProductGroup.query.filter_by(name=group_name)
        product = group.join(Product).filter_by(
            name=product_name).with_entities(Product)
        return product.one_or_none()

    @property
    def purchase_count_by_state(self):
        states = Purchase.query.join(PriceTier, Product) \
                               .filter(Product.id == self.id) \
                               .with_entities(Purchase.state, func.count(Purchase.id)) \
                               .group_by(Purchase.state)

        return dict(states)

    def get_cheapest_price(self, currency='GBP'):
        price = PriceTier.query.filter_by(product_id=self.id) \
                         .join(Price).filter_by(currency=currency) \
                         .with_entities(Price) \
                         .order_by(Price.price_int).first()
        return price

    def get_price_tier(self, name):
        tier = PriceTier.query.filter_by(product_id=self.id) \
                        .filter_by(name=name)
        return tier.one_or_none()

    def __repr__(self):
        return "<Product: %s>" % self.name

    def __str__(self):
        return self.name
Exemple #20
0
class Foundation(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    tag = db.Column(db.String, unique=True)
    wg_tag = db.Column(db.String(10))
    category_id = db.Column(db.Integer, db.ForeignKey('category.id'))
    category = db.relationship('Category',
                               backref=db.backref('foundation', lazy=True))

    width = db.Column(db.Float)
    depth = db.Column(db.Float)
    thickness = db.Column(db.Float)
    length = db.Column(db.Float)
    amount = db.Column(db.Integer)

    top_bar_type = db.Column(db.String(20))
    mid_bar_type = db.Column(db.String(20))
    bot_bar_type = db.Column(db.String(20))
    stir_bar_type = db.Column(db.String(20))

    top_bar_amt = db.Column(db.Integer)
    mid_bar_amt = db.Column(db.Integer)
    bot_bar_amt = db.Column(db.Integer)
    stir_spacing = db.Column(db.Float)

    timestamp = db.Column(db.String, default=time.ctime())

    def __repr__(self):
        return '<Structural Member Foundation {}'.format(self.tag)

    def __init__(self, doc_id, tag, wg_tag, width, depth, thickness, length,
                 amount, category, top_bar, mid_bar, bot_bar, stirup,
                 stirup_spacing, amt_top, amt_mid, amt_bot):

        self.tag = tag
        self.wg_tag = wg_tag

        self.width = width
        self.length = length
        self.depth = depth
        self.thickness = thickness
        self.amount = amount

        self.top_bar_type = top_bar
        self.mid_bar_type = mid_bar
        self.bot_bar_type = bot_bar
        self.stir_bar_type = stirup

        self.top_bar_amt = amt_top
        self.mid_bar_amt = amt_mid
        self.bot_bar_amt = amt_bot
        self.stir_spacing = stirup_spacing
Exemple #21
0
class Devices(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(100), nullable=False)
    ip = db.Column(db.String(100))
    barcode = db.Column(db.String(100))
    device_key = db.Column(db.String(1000),
                           nullable=False,
                           default=random_gen())
    command = db.Column(db.String(100), nullable=False)
    state = db.Column(db.Integer, nullable=False, default=0)
    description = db.Column(db.String(500))
    typeId = db.Column(db.Integer, db.ForeignKey("device_types.id"))
    flatId = db.Column(db.Integer, db.ForeignKey("flats.id"))
    roomId = db.Column(db.Integer, db.ForeignKey("rooms.id"))
    dateAdded = db.Column(db.DateTime, nullable=False, default=datetime.now)
    pins = db.relationship('Pins', backref='devices', lazy='joined')
    sensors = db.relationship('Sensors', backref='devices', lazy='joined')
    sensor_records = db.relationship('Sensor_records',
                                     backref='devices',
                                     lazy=True)
    schedules = db.relationship('Schedules', backref='devices', lazy=True)

    def json(self):
        device = {
            "id": self.id,
            "name": self.name,
            "ip": self.ip,
            "barcode": self.barcode,
            "device_key": self.device_key,
            "command": self.command,
            "state": self.state,
            "description": self.description,
            "typeId": self.typeId,
            "flatId": self.flatId,
            "roomId": self.roomId,
            "dateAdded": self.dateAdded
        }
        return device
class MonitorCryingSensorData(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    created_at = db.Column(db.DateTime, default=datetime.utcnow)

    crying = db.Column(db.Boolean)

    monitor_crying_sensor_id = db.Column(
        db.Integer, db.ForeignKey("monitor_crying_sensor.id"))

    def __repr__(self):
        return "<MonitorCryingSensorData {}>".format(self.id)

    def created(self):
        return self.created_at.strftime("%d/%m/%Y %H:%M:%S")
class BatteryAuditTable(db.Model):
    __tablename__ = 'battery_audit_table'
    _id = db.Column(db.Integer, primary_key=True, unique=True)
    audit_id = db.Column(db.Integer,
                         db.ForeignKey('task_table.audit_id'),
                         nullable=False)
    emp_id = db.Column(db.Integer,
                       db.ForeignKey('users_login.emp_id'),
                       nullable=False)
    power_sup_loc = db.Column(db.String(20))
    power_sup_sock = db.Column(db.String(20))
    battery_avail = db.Column(db.String(5))
    battery_conn_cx = db.Column(db.String(5))
    voltage = db.Column(db.String(5))
    battery_type = db.Column(db.String(5))
    capacity = db.Column(db.String(5))
    install_date = db.Column(db.String(25))
    serial = db.Column(db.Integer)
    check_point_t1 = db.Column(db.Float)  # First 15 Min Discharging Test
    check_point_t2 = db.Column(db.Float)  # Second 15 Min Discharging Test
    check_point_t3 = db.Column(
        db.String(5))  # Is Battery going down on Starting the Discharging Test
    is_battery_changed = db.Column(db.String(5))
Exemple #24
0
class Ad(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(100), nullable=False)
    datePosted = db.Column(db.DateTime, nullable=False, default=datetime.utcnow)
    description = db.Column(db.Text, nullable=False)
    userId = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)

    images = db.relationship('Image', backref='author', lazy=True, cascade="delete")
    payingTypes = db.relationship('PayingType', secondary=payingTypes, lazy='subquery',
                           backref=db.backref('ads', lazy=True), cascade="delete")
    books = db.relationship('Book', backref='ad', lazy=True, cascade="delete")

    def __repr__(self):
        return f"Post('{self.title}', '{self.datePosted}')"
Exemple #25
0
class RfidTag(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(100), nullable=False)
    residentId = db.Column(db.Integer, db.ForeignKey("resident.id"))
    description = db.Column(db.String(500))

    def json(self):
        rfidTags = {
            "id": self.id,
            "name": self.name,
            "residentId": self.residentId,
            "description": self.description
        }
        return rfidTags
Exemple #26
0
class Sprint(db.Model):  # Creating a Users class inheriting from db.Model
    __tablename__ = "sprints"

    id = db.Column(db.Integer, primary_key=True)
    meeting_point = db.Column(db.String(), nullable=False)
    creation_time = db.Column(db.DateTime, nullable=False)
    league_id = db.Column(db.Integer,
                          db.ForeignKey("leagues.id"),
                          nullable=False)
    points = db.relationship("Point", backref=backref("sprint"))

    def __repr__(
            self):  # When printing the model we will see its email attribute
        return f"<Sprint {self.creation_time}>"
Exemple #27
0
class Districts(db.Model):
    __tablename__ =  "districts"

    id = db.Column(db.Integer, primary_key=True)
    district = db.Column(db.String(200), nullable=False)
    state = db.Column(db.Integer, db.ForeignKey('states.id'))

    # relationship variable, to list all the user_roles
    towns = db.relationship('Towns', backref='enquiry', lazy=True)
    institutions = db.relationship('Institutions', backref='enquiry', lazy=True)

    def __repr__(self):
        return '{"id":{0}, "district":{1}}'.format(self.id, self.district)

    @classmethod
    def get_all_districts(cls):
        districts = Districts.query.all()
        districts_json = [district.serialize() for district in districts]
        return districts_json

    @classmethod
    def get_district_from_id(cls, id):
        district = cls.query.get(id)
        return district

    @classmethod
    def delete_district_from_id(cls, id):
        district = cls.get_district_from_id(id)
        if district is None:
            return None
        db.session.delete(district)
        db.session.commit()
        return district

    @classmethod
    def submit_district_from_json(cls, json_district):
        district = cls(district=json_district['district'], state=json_district.get("state", 0))
        db.session.add(district)
        db.session.commit()
        return district

    # todo:json encoding needed
    def serialize(self):
        json_district = {
            'id': self.id,
            'name': self.district,
            'towns': [town.serialize() for town in self.towns],
            'Institutions': [institution.serialize() for institution in self.institutions]
        }
        return json_district
Exemple #28
0
class ProfileImage(db.Model):
    __tablename__ = "profile_images"  # explicitly providing the name of the table

    id = db.Column(
        db.Integer, primary_key=True
    )  # creates a column called id, sets it as an integer and links it to a primary key
    filename = db.Column(db.String(), nullable=False,
                         unique=True)  # profilename, string, must be present
    profile_id = db.Column(
        db.Integer, db.ForeignKey(".id"),
        nullable=False)  # profile id, integer, foreign key, must be present

    def __repr__(self):
        return f"<ProfileImage {self.filename}>"
Exemple #29
0
class Customer(db.Model):
    __tablename__ = "customers"

    id = db.Column(db.Integer, primary_key=True)
    firstname = db.Column(db.String(), nullable=False)
    lastname = db.Column(db.String(), nullable=False)
    email = db.Column(db.String(), nullable=False, unique=True)
    phone = db.Column(db.String())
    store_id = db.Column(db.Integer, db.ForeignKey("stores.id"),
                         nullable=False)
    order = db.relationship("Order", backref="customer")

    def __repr__(self):
        return f"<Customer {self.firstname}, {self.lastname}, {self.email}>"
Exemple #30
0
class ApplyTalent(db.Model):

    __tablename__ = 'apply_talent'

    id = db.Column(db.Integer, primary_key=True)
    talent_id = db.Column(db.Integer,
                          db.ForeignKey('talent.id', ondelete='cascade'),
                          nullable=False)
    contributor_id = db.Column(db.Integer,
                               db.ForeignKey('user.id', ondelete='cascade'),
                               nullable=False)
    completed_at = db.Column(db.DateTime, nullable=True)
    talent = db.relationship('Talent', back_populates='apply_talent')

    def get_data(self):
        completed_at = int(
            self.completed_at.timestamp()) if self.completed_at else None
        return {
            'id': self.id,
            'talent_id': self.talent_id,
            'contributor_id': self.contributor_id,
            'completed_at': completed_at
        }