Exemple #1
0
class Auth(mysql_db.Model):
    __tablename__ = 'auth'
    id = mysql_db.Column(mysql_db.Integer, primary_key=True)
    name = mysql_db.Column(mysql_db.String(64), unique=True)
    url = mysql_db.Column(mysql_db.String(128), unique=True)
    addtime = mysql_db.Column(mysql_db.DateTime,
                              index=True,
                              default=datetime.now())

    def __repr__(self):
        return '<Auth %r>' % self.name
Exemple #2
0
class Preview(mysql_db.Model):
    __tablename__ = "preview"
    id = mysql_db.Column(mysql_db.Integer, primary_key=True)  # 编号
    title = mysql_db.Column(mysql_db.String(64), unique=True)  # 标题
    logo = mysql_db.Column(mysql_db.String(128), unique=True)  # 封面
    addtime = mysql_db.Column(mysql_db.DateTime,
                              index=True,
                              default=datetime.now)  # 添加时间

    def __repr__(self):
        return "<Preview %r>" % self.title
Exemple #3
0
class Category(mysql_db.Model):
    __tablename__ = 'category'
    id = mysql_db.Column(mysql_db.Integer, primary_key=True)
    title = mysql_db.Column(mysql_db.String(64), unique=True)
    addtime = mysql_db.Column(mysql_db.DateTime,
                              index=True,
                              default=datetime.now)
    movie = mysql_db.relationship('Movie', backref='category')

    def __repr__(self):
        return '<Category %r' % self.title
Exemple #4
0
class AdminLog(mysql_db.Model):
    __tablename__ = 'adminlog'
    id = mysql_db.Column(mysql_db.Integer, primary_key=True)
    ip = mysql_db.Column(mysql_db.String(64))
    addtime = mysql_db.Column(mysql_db.DateTime,
                              index=True,
                              default=datetime.now)
    admin_id = mysql_db.Column(mysql_db.Integer,
                               mysql_db.ForeignKey('admin.id'))

    def __repr__(self):
        return '<Admin %r>' % self.id
Exemple #5
0
class Moviecol(mysql_db.Model):
    __tablename__ = "moviecol"
    id = mysql_db.Column(mysql_db.Integer, primary_key=True)  # 编号
    movie_id = mysql_db.Column(mysql_db.Integer,
                               mysql_db.ForeignKey('movie.id'))
    user_id = mysql_db.Column(mysql_db.Integer, mysql_db.ForeignKey('user.id'))
    addtime = mysql_db.Column(mysql_db.DateTime,
                              index=True,
                              default=datetime.now)

    def __repr__(self):
        return '<Moviecol %r' % self.id
Exemple #6
0
class Role(mysql_db.Model):
    __tablename__ = 'role'
    id = mysql_db.Column(mysql_db.Integer, primary_key=True)
    name = mysql_db.Column(mysql_db.String(64), unique=True)
    auths = mysql_db.Column(mysql_db.String(128))
    admins = mysql_db.relationship("Admin", backref='role')
    addtime = mysql_db.Column(mysql_db.DateTime,
                              index=True,
                              default=datetime.now)

    def __repr__(self):
        return "<Role %r>" % self.name
Exemple #7
0
class CiProtocol(mysql_db.Model):
    __tablename__ = 'ci_protocol'

    id = mysql_db.Column(mysql_db.Integer, primary_key=True)
    partner_id = mysql_db.Column(mysql_db.Integer)
    agent_id = mysql_db.Column(mysql_db.Integer)
    branch_id = mysql_db.Column(mysql_db.Integer)
    protocol_code = mysql_db.Column(mysql_db.String(32))
    protocol_name = mysql_db.Column(mysql_db.String(32))
    protocol_sub_code = mysql_db.Column(mysql_db.String(32))
    product = mysql_db.Column(mysql_db.String(1000))
    created = mysql_db.Column(mysql_db.DateTime, default=func.now())
    updated = mysql_db.Column(mysql_db.TIMESTAMP, default=func.now())
Exemple #8
0
class CiPartner(mysql_db.Model):
    __tablename__ = 'ci_partner'

    id = mysql_db.Column(mysql_db.Integer, primary_key=True)
    account_id = mysql_db.Column(mysql_db.Integer)
    partner_code = mysql_db.Column(mysql_db.String(16))
    partner_name = mysql_db.Column(mysql_db.String(16))
    business_code = mysql_db.Column(mysql_db.String(16))
    business_detail_code = mysql_db.Column(mysql_db.String(16))
    channel_code = mysql_db.Column(mysql_db.String(16))
    channel_detail_code = mysql_db.Column(mysql_db.String(16))
    created = mysql_db.Column(mysql_db.DateTime, default=func.now())
    updated = mysql_db.Column(mysql_db.TIMESTAMP, default=func.now())
Exemple #9
0
class Comment(mysql_db.Model):
    __tablename__ = 'comment'
    id = mysql_db.Column(mysql_db.Integer, primary_key=True)
    content = mysql_db.Column(mysql_db.Text)
    user_id = mysql_db.Column(mysql_db.Integer, mysql_db.ForeignKey('user.id'))
    movie_id = mysql_db.Column(mysql_db.Integer,
                               mysql_db.ForeignKey('movie.id'))
    addtime = mysql_db.Column(mysql_db.DateTime,
                              index=True,
                              default=datetime.now)

    def __repr__(self):
        return '<Comment %r>' % self.id
Exemple #10
0
class UserLog(mysql_db.Model):
    __tablename__ = 'userlog'
    id = mysql_db.Column(mysql_db.Integer, primary_key=True)
    user_id = mysql_db.Column(mysql_db.Integer,
                              mysql_db.ForeignKey('user.id'),
                              onupdate=True)
    ip = mysql_db.Column(mysql_db.String(64))
    addtime = mysql_db.Column(mysql_db.DateTime,
                              index=True,
                              default=datetime.now)

    def __repr__(self):
        return '<UserLog %r>' % self.id
class Reservation(mysql_db.Model):
    __tablename__ = 'Reservations'

    reservation_id = mysql_db.Column(mysql_db.Integer, primary_key=True)
    lot_id = mysql_db.Column(mysql_db.Integer)
    start_time = mysql_db.Column(mysql_db.DateTime, nullable=False)
    end_time = mysql_db.Column(mysql_db.Integer, nullable=False)

    def __init__(self, **kwargs):
        self.lot_id = kwargs.get('lot_id')
        self.start_time = kwargs.get('start_time')
        self.end_time = kwargs.get('end_time')

    def __eq__(self, other_user):
        return self.id == other_user.id
Exemple #12
0
class User(db.Model):
    __bind_key__ = 'mysql_bind'
    __tablename__ = 'user'
    id = db.Column('id',
                   db.BIGINT,
                   primary_key=True,
                   nullable=False,
                   autoincrement=True)
    account = db.Column('account',
                        db.String(255),
                        unique=True,
                        nullable=False,
                        comment='用户名')
    password = db.Column('password',
                         db.String(255),
                         nullable=False,
                         comment='密码')
    nick_name = db.Column('nick_name',
                          db.String(100),
                          nullable=False,
                          comment='昵称')
    role = db.Column('role',
                     db.SmallInteger,
                     nullable=False,
                     default=1,
                     comment='角色')
    avatar = db.Column('avatar', db.BLOB, comment='头像')
    github = db.Column('github', db.String(255), default='')
Exemple #13
0
class CiBranch(mysql_db.Model):
    __tablename__ = 'ci_branch'

    id = mysql_db.Column(mysql_db.Integer, primary_key=True)
    partner_id = mysql_db.Column(mysql_db.Integer)
    agent_id = mysql_db.Column(mysql_db.Integer)
    branch_code = mysql_db.Column(mysql_db.String(32))
    branch_name = mysql_db.Column(mysql_db.String(32))
    created = mysql_db.Column(mysql_db.DateTime, default=func.now())
    updated = mysql_db.Column(mysql_db.TIMESTAMP, default=func.now())
Exemple #14
0
class Role(db.Model):
    __bind_key__ = 'mysql_bind'
    __tablename__ = 'role'

    id = db.Column('id',
                   BIGINT(unsigned=True),
                   nullable=False,
                   autoincrement=True,
                   primary_key=True)
    name = db.Column('name', db.String(128), nullable=False, comment='角色名称')
    op_user = db.Column('op_user', db.BIGINT, nullable=False, comment='操作人')
    ctime = db.Column('ctime',
                      db.DateTime,
                      nullable=False,
                      default=datetime.now(),
                      comment='创建时间')
    mtime = db.Column('mtime',
                      db.DateTime,
                      nullable=False,
                      default=datetime.now(),
                      comment='更新时间')
Exemple #15
0
class User(mysql_db.Model):
    __tablename__ = 'user'
    id = mysql_db.Column(mysql_db.Integer, primary_key=True)
    name = mysql_db.Column(mysql_db.String(64), unique=True, nullable=False)
    pwd = mysql_db.Column(mysql_db.String(128), nullable=False)
    emial = mysql_db.Column(mysql_db.String(64), unique=True)
    info = mysql_db.Column(mysql_db.Text)
    avatar = mysql_db.Column(mysql_db.String(64), unique=True)
    addtime = mysql_db.Column(mysql_db.DateTime,
                              index=True,
                              default=datetime.now)
    userlogs = mysql_db.relationship('UserLog', backref='user')
    comments = mysql_db.relationship('Comment', backref='user')
    moviecol = mysql_db.relationship('Moviecol', backref='user')

    def __repr__(self):
        return '<User %r>' % self.name

    def check_pwd(self, pwd):
        from werkzeug.security import check_password_hash
        return check_password_hash(self.pwd, pwd)
Exemple #16
0
class Admin(
        mysql_db.Model, ):
    __tablename__ = 'admin'
    __table_args__ = {"useexisting": True}
    id = mysql_db.Column(mysql_db.Integer, primary_key=True)
    name = mysql_db.Column(mysql_db.String(64), unique=True)
    pwd = mysql_db.Column(mysql_db.String(128))
    is_super = mysql_db.Column(mysql_db.SmallInteger, default=1)
    addtime = mysql_db.Column(mysql_db.DateTime,
                              index=True,
                              default=datetime.now)
    adminlogs = mysql_db.relationship("AdminLog", backref='admin')
    oplogs = mysql_db.relationship("OpLog", backref='admin')
    role_id = mysql_db.Column(mysql_db.Integer, mysql_db.ForeignKey('role.id'))

    def __repr__(self):
        return '<Admin %r>' % self.name

    def check_pwd(self, pwd):
        from werkzeug.security import check_password_hash
        return check_password_hash(self.pwd, pwd)
Exemple #17
0
from app import mysql_db as db

article_tag = db.Table('article_tag',
                       db.Column('article_id',
                                 db.BIGINT,
                                 db.ForeignKey('article.id'),
                                 primary_key=True),
                       db.Column('tag_id',
                                 db.BIGINT,
                                 db.ForeignKey('tag.id'),
                                 primary_key=True),
                       extend_existing=True,
                       info={'bind_key': 'mysql_bind'})
Exemple #18
0
class CiAccount(mysql_db.Model):
    __tablename__ = 'ci_account'

    id = mysql_db.Column(mysql_db.Integer, primary_key=True)
    username = mysql_db.Column(mysql_db.String(32), index=True, unique=True)
    password = mysql_db.Column(mysql_db.String(128), nullable=False)
    vpn_username = mysql_db.Column(mysql_db.String(32), default='')
    vpn_password = mysql_db.Column(mysql_db.String(128), default='')
    ins_company = mysql_db.Column(mysql_db.String(16), default='')
    login_type = mysql_db.Column(mysql_db.Integer, default=0)
    department_code = mysql_db.Column(mysql_db.String(16), default='')
    department_name = mysql_db.Column(mysql_db.String(32), default='')
    seller_code = mysql_db.Column(mysql_db.String(16), default='')
    seller_name = mysql_db.Column(mysql_db.String(32), default='')
    area = mysql_db.Column(mysql_db.String(32), default='')
    proxy = mysql_db.Column(mysql_db.String(32), default='')
    is_bank = mysql_db.Column(mysql_db.Integer, default=0)
    cookies = mysql_db.Column(mysql_db.String(2000), default='')
    pre_url = mysql_db.Column(mysql_db.String(2000), default='')
    pre_verify = mysql_db.Column(mysql_db.Integer, default=-1)
    created = mysql_db.Column(mysql_db.DateTime, default=func.now())
    updated = mysql_db.Column(mysql_db.TIMESTAMP, default=func.now())
Exemple #19
0
class Movie(mysql_db.Model):
    __tablename__ = 'movie'
    id = mysql_db.Column(mysql_db.Integer, primary_key=True)
    name = mysql_db.Column(mysql_db.String(64), unique=True)
    url = mysql_db.Column(mysql_db.String(128), unique=True)
    info = mysql_db.Column(mysql_db.Text)
    logo = mysql_db.Column(mysql_db.String(128), unique=True)
    score = mysql_db.Column(mysql_db.BigInteger)
    playnum = mysql_db.Column(mysql_db.Integer)
    area = mysql_db.Column(mysql_db.String(64))
    release_time = mysql_db.Column(mysql_db.Date)
    length = mysql_db.Column(mysql_db.String(64))  # 播放时长
    category_id = mysql_db.Column(mysql_db.Integer,
                                  mysql_db.ForeignKey('category.id'))
    moviecol = mysql_db.relationship("Moviecol", backref='movie')
    addtime = mysql_db.Column(mysql_db.DateTime,
                              index=True,
                              default=datetime.now)
    comments = mysql_db.relationship("Comment", backref='movie')

    def __repr__(self):
        return '<Movie %r' % self.name
Exemple #20
0
class Tag(BaseModel):
    __bind_key__ = 'mysql_bind'
    __tablename__ = 'tag'
    id = db.Column('id',
                   db.BIGINT,
                   primary_key=True,
                   nullable=False,
                   autoincrement=True)
    name = db.Column('name', db.String(100), nullable=False, comment='标签名称')
    ctime = db.Column('ctime',
                      db.DateTime,
                      nullable=False,
                      default=datetime.now(),
                      comment='创建时间')
    mtime = db.Column('mtime',
                      db.DateTime,
                      nullable=False,
                      default=datetime.now(),
                      comment='更新时间')

    _default_fields = ['id', 'name']

    @staticmethod
    def get_one(id):
        try:
            ret = Tag.query.filter(Tag.id == id).first()
            return ret
        except Exception as e:
            logger.error('获取标签信息出现错误, %s' % e)
            raise Exception('获取标签信息失败')

    @staticmethod
    def get_list(page_index=1, page_size=10):
        try:
            page_inate_datas = Tag.query.order_by(Tag.id.desc()).paginate(
                page_index, page_size, error_out=False)

            return page_inate_datas
        except Exception as e:
            logger.error('获取标签列表出现错误, %s' % e)
            raise Exception('获取标签列表信息失败')

    def add(self):
        try:
            db.session.add(self)
            db.session.commit()
        except Exception as e:
            logger.error('保存标签数据失败, %s' % e)
            raise Exception('保存标签数据失败')

    def update(self):
        try:
            db.session.commit()
        except Exception as e:
            logger.error('更新数据出现错误, %s' % e)
            raise Exception('更新数据失败')

    @staticmethod
    def delete(ids):
        try:
            Tag.query.filter(Tag.id.in_(ids)).delete(synchronize_session=False)
            db.session.commit()
        except Exception as e:
            logger.error('删除数据出现错误, %s' % e)
            raise Exception('删除数据失败')
Exemple #21
0
class CommentReply(BaseModel):
    __bind_key__ = 'mysql_bind'
    __tablename__ = 'comment_reply'

    id = db.Column('id', db.BIGINT, primary_key=True, autoincrement=True)
    comment_id = db.Column('comment_id',
                           db.BIGINT,
                           db.ForeignKey('comment.id'),
                           nullable=False,
                           comment='评论ID')
    reply_type = db.Column('reply_type',
                           db.Integer,
                           nullable=False,
                           comment='评论回复类型,0-针对评论回复,1-针对回复的回复')
    content = db.Column('content', db.Text, nullable=False, comment='评论内容')
    reply_id = db.Column('reply_id',
                         db.BIGINT,
                         nullable=False,
                         comment='回复目标ID')
    uid = db.Column('uid', db.BIGINT, nullable=False, comment='回复人的ID')
    to_uid = db.Column('to_uid', db.BIGINT, nullable=False, comment='回复目标人的ID')
    like = db.Column('like',
                     db.BIGINT,
                     nullable=False,
                     default=0,
                     comment='点赞数量')
    tread = db.Column('tread',
                      db.BIGINT,
                      nullable=False,
                      default=0,
                      comment='踩数量')
    ctime = db.Column('ctime',
                      db.DateTime,
                      nullable=False,
                      default=datetime.now(),
                      comment='创建时间')
    mtime = db.Column('mtime',
                      db.DateTime,
                      nullable=False,
                      default=datetime.now(),
                      comment='更新时间')

    _default_fields = [
        "id", "comment_id", "reply_type", "content", "uid", "to_uid", "like",
        "tread", "replys", "ctime", "mtime"
    ]
Exemple #22
0
class Comment(BaseModel):
    '''
        评论
    '''
    __bind_key__ = 'mysql_bind'
    __tablename__ = 'comment'

    id = db.Column('id',
                   db.BIGINT,
                   nullable=False,
                   primary_key=True,
                   autoincrement=True)
    aid = db.Column('aid',
                    db.BIGINT,
                    db.ForeignKey('article.id'),
                    nullable=False,
                    comment='文章ID')
    uid = db.Column('uid', db.BIGINT, nullable=False, comment='评论人ID')
    content = db.Column('content', db.TEXT, nullable=False, comment='评论内容')
    like = db.Column('like',
                     db.BIGINT,
                     nullable=False,
                     default=0,
                     comment='点赞数量')
    tread = db.Column('tread',
                      db.BIGINT,
                      nullable=False,
                      default=0,
                      comment='踩数量')
    ctime = db.Column('ctime',
                      db.DateTime,
                      nullable=False,
                      default=datetime.now(),
                      comment='创建时间')
    mtime = db.Column('mtime',
                      db.DateTime,
                      nullable=False,
                      default=datetime.now(),
                      comment='更新时间')
    replys = db.relationship('CommentReply')

    _default_fields = [
        "id", "content", "like", "tread", "replys", "ctime", "mtime"
    ]

    def add(self):
        try:
            db.session.add(self)
            db.session.commit()
        except Exception as e:
            logger.error('保存评论出现错误, %s' % e)
            raise Exception('保存评论出现错误')

    @staticmethod
    def get_comment_list(id):
        try:
            results = Comment.query.filter(Comment.aid == id).all()

            return [result.to_dict() for result in results]
        except Exception as e:
            print(e)
            logger.error('检索数据出现错误, %s' % e)
            raise Exception('检索数据出现错误')
Exemple #23
0
class Article(BaseModel):
    __bind_key__ = 'mysql_bind'
    __tablename__ = 'article'

    id = db.Column('id',
                   db.BIGINT,
                   primary_key=True,
                   nullable=False,
                   autoincrement=True)
    uid = db.Column('uid', db.BIGINT, nullable=False, comment='作者')
    title = db.Column('title', db.String(225), nullable=False, comment='文章标题')
    content = db.Column('content', db.Text, nullable=False, comment='文章内容')
    like = db.Column('like',
                     db.Integer,
                     nullable=False,
                     default=0,
                     comment='点赞数')
    tread = db.Column('tread',
                      db.BIGINT,
                      nullable=False,
                      default=0,
                      comment='踩数量')
    view = db.Column('view',
                     BIGINT(unsigned=True),
                     nullable=False,
                     default=0,
                     comment='浏览次数')
    reply = db.Column('reply',
                      BIGINT(unsigned=True),
                      nullable=False,
                      default=0,
                      comment='回复数')
    share = db.Column('share',
                      BIGINT(unsigned=True),
                      nullable=False,
                      default=0,
                      comment='分享次数')
    ctime = db.Column('ctime',
                      db.DateTime,
                      nullable=False,
                      default=datetime.now())
    mtime = db.Column('mtime',
                      db.DateTime,
                      nullable=False,
                      default=datetime.now())
    comments = db.relationship('Comment')

    tags = db.relationship('Tag',
                           secondary=article_tag,
                           backref=db.backref('articles'))

    _default_fields = [
        "id", "uid", "title", "content", "like", "tread", "view", "reply",
        "share", "ctime", "mtime", "tags"
    ]

    def save(self):
        try:
            db.session.add(self)
            db.session.commit()
        except Exception as e:
            logger.error('保存数据出现错误, %s' % e)
            raise Exception('保存数据失败')

    def update(self):
        try:
            db.session.commit()
        except Exception as e:
            logger.error('更新数据出现错误, %s' % e)
            raise Exception('更新数据失败')

    @staticmethod
    def delete(ids):
        try:
            Article.query.filter(
                Article.id.in_(ids)).delete(synchronize_session=False)
            db.session.commit()
        except Exception as e:
            logger.error('删除数据出现错误, %s' % e)
            raise Exception('删除数据失败')

    @staticmethod
    def get_article(id):
        try:
            ret = Article.query.filter(Article.id == id).first()
            return ret
        except Exception as e:
            logger.error('获取文章信息出现错误, %s' % e)
            raise Exception('获取文章信息失败')

    @staticmethod
    def get_article_list(page_index=1, page_size=10):
        try:
            page_inate_datas = Article.query.order_by(
                Article.id.desc()).paginate(page_index,
                                            page_size,
                                            error_out=False)

            return page_inate_datas
        except Exception as e:
            logger.error('检索文章列表失败, %s' % e)
            raise Exception('检索文章列表失败')