示例#1
0
class Post(db.Model):
    postID = db.Column(db.Integer, primary_key=True)
    topicID = db.Column(db.Integer, db.ForeignKey(Topic.topicID))
    postingUser = db.Column(db.String(20), db.ForeignKey(User.username))
    description = db.Column(db.String(800), nullable=False)
    upvoteCount = db.Column(db.Integer, default=0)
    createdTime = db.Column(db.DateTime, default=datetime.datetime.now)
    postType = db.Column(db.String(10), nullable=False)

    @property
    def serialize(self):
        """Return object data in easily serializable format"""
        return {
            'postID': self.postID,
            'topicID': self.topicID,
            'postingUser': self.postingUser,
            'description': self.description,
            'upvoteCount': self.upvoteCount,
            'createdTime': self.createdTime,
            'postType': self.postType,
            'timeAgo': self.time_ago
        }

    @property
    def time_ago(self):
        import timeago, datetime
        now = datetime.datetime.now()
        if self.createdTime:
            return timeago.format(self.createdTime, now)

    def __repr__(self):
        return "<Post {}>".format(self.description)
示例#2
0
class Cidades(db.Model):
    __tablename__ = 'cidades'
    id = db.Column(db.Integer, primary_key=True)
    nome = db.Column(db.String(100))
    idmicroregiao = db.Column(db.Integer, db.ForeignKey('microregiao.id'))
    iduf = db.Column(db.Integer, db.ForeignKey('uf.id'))
    microregiao = db.relationship("MicroRegiao")
示例#3
0
class Post(db.Model):
    __tablename__ = "posts"

    id = db.Column(db.Integer, primary_key=True)
    content = db.Column(db.Text)
    user_id = db.Column(db.Integer, db.ForeignKey('users.id'))

    user = db.relationship('User', foreign_keys=user_id) #campo de relacionamento | 

    def __init__(self, content, user_id):
        self.content = content
        self.user_id = user_id

    
     def Follow(db.Model):
        __tablename__ = "follow"

        id = db.Column(db.Integer, primary_key=True)
        user_id = db.Column(db.Integer, db.ForeignKey('users.id'))
        follower_id = db.Column(db.Integer, db.ForeignKey('users.id'))

        user = db.relationship('User', foreign_keys=user_id)
        follower = db.relationship('User', foreign_keys=follower_id)
        
        
示例#4
0
class Chat(db.Model):
    __tablename__ = "chat"

    id = db.Column(db.Integer, primary_key=True, nullable=False)

    message = db.Column(db.String(), nullable=False)

    sender = db.Column(db.Integer, db.ForeignKey('user.id'))

    receiver = db.Column(db.Integer, db.ForeignKey('user.id'))

    timestamp = db.Column(db.DateTime, index=True, default=datetime.utcnow)

    def __init__(self,
                 message,
                 sender_id,
                 receiver_id,
                 timestamp=datetime.utcnow,
                 *args,
                 **kwargs):
        self.message = message
        self.sender = sender_id
        self.receiver = receiver_id

    def serialize(self):
        return {
            "sender": self.sender,
            "receiver": self.receiver,
            "message": self.message,
            "timestamp": str(self.timestamp) + 'Z'
        }

    def __repr__(self):
        return 'Chat object: sender {} and receiver {}'.format(
            self.sender, self.receiver)
示例#5
0
文件: models.py 项目: ppmt/Crust
class Ingredientlist(db.Model):
    # Definition of the models
    id = db.Column(db.Integer, primary_key=True)
    ingredient = db.Column(db.String(64), index=True, unique=True)
    category_id = db.Column(db.Integer, db.ForeignKey('categorylist.id'))
    supplier_id = db.Column(db.Integer, db.ForeignKey('supplierlist.id'))
    bag_size = db.Column(db.Float, index=False, unique=False)
    bag_cost = db.Column(db.Float, index=False, unique=False)
    unit = db.Column(db.String(5), index=False, unique=False)
    cost_unit = db.Column(db.Float, index=False, unique=False)
    purchase_date = db.Column(db.DateTime)
    first_entry = db.Column(db.DateTime)
    last_update = db.Column(db.DateTime)

    @staticmethod
    def CostPerUnit(bag_size, bag_cost):
        return bag_cost/bag_size

    @staticmethod
    def GetIngID(Ingredient):
        ing = Ingredientlist.query.filter_by(ingredient=Ingredient).first()
        return ing.id

    def __repr__(self):   # return id of ingredient
        #results = self.ingredient + ':' + str(self.id)
        results = self.ingredient
        return results

    ##TODO define a function that will create a dictionnary with the key being a category
    ##     and the value a list of ingredient that have that category
    def GetIngredientbyCategory():

        return True
示例#6
0
class Comment(db.Model):
    __tablename__ = "blog_comments"

    comments_id = db.Column(db.INT, primary_key=True, autoincrement=True)
    comments_contents = db.Column(db.String(300), unique=False)
    comments_posttime = db.Column(db.DateTime)
    parents_id = db.Column(db.String(300))
    comments_level = db.Column(db.INT)
    user_id = db.Column(db.INTEGER,
                        db.ForeignKey('blog_users.user_id'))  # 关联用户userID
    articls_id = db.Column(db.INTEGER,
                           db.ForeignKey('articls.articls_id'))  # 关联用户userID

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

    def __init__(self, comments_id, comments_contents, comments_posttime,
                 parents_id, comments_level, user_id, articls_id):
        self.comments_id = comments_id
        self.comments_contents = comments_contents
        self.comments_posttime = comments_posttime
        self.parents_id = parents_id
        self.comments_level = comments_level
        self.user_id = user_id
        self.articls_id = articls_id
示例#7
0
class Reaction(db.Model):
    postID = db.Column(db.Integer,
                       db.ForeignKey(Post.postID),
                       primary_key=True)
    reactingUser = db.Column(db.String(20),
                             db.ForeignKey(User.username),
                             primary_key=True)
    reactionType = db.Column(db.String(10), default="upvote")
示例#8
0
class Follow(db.Model):
         __tablename__ ="follow"

         id = db.Column(db.Integer, primary_key=True)
         user_id = db.Column(db.Integer, db.ForeignKey('users.id'))
         follower_id = db.Column(db.Integer, db.ForeignKey('users.id'))

         user = db.relationship('User', foreign_keys=user_id)
         follower = db.relationship('User', foreign_keys=follower_id)
class Message(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    sender_id = db.Column(db.Integer, db.ForeignKey('user.id'))
    recipient_id = db.Column(db.Integer, db.ForeignKey('user.id'))
    body = db.Column(db.String(200))
    timestamp = db.Column(db.DateTime, index=True, default=datetime.utcnow)

    def __repr__(self):
        return '<Message {}>'.format(self.body)
示例#10
0
class Answer(db.Model):
    __tablename__ = 'answer'
    id = db.Column(db.Integer, primary_key=True, unique=True, nullable=False)
    content = db.Column(db.Text, nullable=False)
    question_id = db.Column(db.Integer, db.ForeignKey('question.message_id'))
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'))

    question = db.relationship('Question', backref='answere')
    user = db.relationship('User', backref='answere')
示例#11
0
class ManufStock(db.Model):
    mStockid=db.Column(db.Integer, primary_key=True)
    manufId=db.Column(db.Integer, db.ForeignKey(Manuf.manufId), unique=False)
    availMedId=db.Column(db.Integer, db.ForeignKey(MedStock.medId), unique=False)
    availMedName=db.Column(db.String(120), db.ForeignKey(MedStock.medName), unique=False)
    availManufQnty=db.Column(db.Integer)

    def __repr__(self):
        return '<ManufStock {}>'.format(self.availMedName)
示例#12
0
class OrderMedFor(db.Model):
    orderId= db.Column(db.Integer, primary_key=True)
    medId= db.Column(db.Integer, db.ForeignKey(MedStock.medId))
    medName= db.Column(db.String(120), db.ForeignKey(MedStock.medName)) 
    toManufId=db.Column(db.Integer,  db.ForeignKey(Manuf.manufId))
    wantQnty= db.Column(db.Integer)
    byDate=db.Column(db.Date )

    def __repr__(self):
        return '<OrderMedFor {}>'.format(self.medName)
示例#13
0
class BoughtBy(db.Model):
    cusId= db.Column(db.Integer, primary_key=True)
    cusName= db.Column(db.String(120), index=True, unique=True)
    medId= db.Column(db.Integer, db.ForeignKey(MedStock.medId))
    buyQnty= db.Column(db.Integer)
    date= db.Column(db.Date, default=date.today())
    CO1=db.Column(db.Integer,  db.ForeignKey(MedStock.CO1))
    totCost=buyQnty*CO1

    def __repr__(self):
        return '<BoughtBy {}>'.format(self.cusName)
示例#14
0
class MedStock(db.Model):
    medId=db.Column(db.Integer, primary_key=True)
    medName=db.Column(db.String(120), index=True, unique=True)
    manufId=db.Column(db.Integer, db.ForeignKey(Manuf.manufId))
    manufName=db.Column(db.String(120), db.ForeignKey(Manuf.manufName))
    availQnty=db.Column(db.Integer)
    CO1=db.Column(db.Integer) # cost of 1
    expDate=db.Column(db.Date )

    def __repr__(self):
        return '<MedStock {}>'.format(self.medName)
示例#15
0
class Case(Base):
    __tablename__ = "case"
    type = db.Column(db.SmallInteger, default=1, comment="做扩展")
    name = db.Column(db.String(32),
                     nullable=False,
                     unique=True,
                     comment="用例名称")
    desc = db.Column(db.String(32), nullable=True, comment="desc")
    request = db.Column(db.TEXT, comment="测试数据")

    project_id = db.Column(db.Integer,
                           db.ForeignKey("project.id"),
                           comment="用例項目")
    interface_id = db.Column(db.INT,
                             db.ForeignKey("interfaces.id"),
                             comment="用例的接口")
    author = db.Column(db.String(32), default="", comment="创建者")

    pwd = db.Column(db.String(200), nullable=True, comment="测试:报告地址")

    def __init__(self,
                 name,
                 request,
                 pid=None,
                 project_id=None,
                 interface_id=None,
                 author=None,
                 desc=None):
        self.name = name
        self.request = request
        self.project_id = project_id
        self.desc = desc
        self.author = author
        self.interface_id = interface_id
        self.project_id = pid

    @property
    def getInterfaceInfo(self):
        interface = Interfaces.query.get(self.interface_id)
        return interface

    @property
    def getProjectInfo(self):
        p = Project.query.get(self.project_id)
        return p

    @classmethod
    def assertName(cls, name):
        res = cls.query.filter_by(name=name).first()
        if res:
            handelAbort("caseNamec存在")

    def __repr__(self):
        return f"name:{self.name}"
示例#16
0
class SpecialRequest(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)
    stock_id = db.Column(db.Integer, db.ForeignKey('stock.id'), nullable=False)
    original_quantity = db.Column(db.Integer, nullable=False)
    qty = db.Column(db.Integer, nullable=False)
    date_applied = db.Column(db.DateTime, nullable=False, default=datetime.now)
    status = db.Column(db.Integer, default=0)
    admins_comment = db.Column(db.Text, nullable=False, default="No Comments")
    users_comment = db.Column(db.Text, nullable=False)
    processed_by = db.Column(db.String(255),
                             nullable=False,
                             default='Not yet Processed')
示例#17
0
class Follow(db.Model):
    __tablename__ = 'follows'
    follower_id = db.Column(db.Integer,
                            db.ForeignKey('users.user_id'),
                            primary_key=True)
    followed_id = db.Column(db.Integer,
                            db.ForeignKey('users.user_id'),
                            primary_key=True)
    timestamp = db.Column(db.DateTime, default=datetime.utcnow)

    def __str__(self):
        return "<table Follow %s>" % (self.follower_id)

    __repr__ = __str__
示例#18
0
class Detalle(db.Model):
    __tablename__ = 'Detalle'
    id = db.Column(db.Integer(), primary_key=True)
    codProducto = db.Column(db.Integer,
                            db.ForeignKey('Productos.Codigo'),
                            nullable=False)
    codingreso = db.Column(db.Integer, db.ForeignKey('Ingreso.cod_ingreso'))
    codsalida = db.Column(db.Integer, db.ForeignKey('salida.Codigo'))
    Docenas = db.Column(db.Integer, nullable=False)
    Unidades = db.Column(db.Integer, nullable=False)
    #relaciones
    fk_producto = db.relationship("productos")
    fk_Ingreso = db.relationship("ingreso")
    fk_Salida = db.relationship("Salida")
示例#19
0
class Friendship(db.Model):
    __tablename__ = "friendship"

    id = db.Column(db.Integer, nullable=False, primary_key=True)
    from_id = db.Column(db.Integer, db.ForeignKey('user.id'))
    to_id = db.Column(db.Integer, db.ForeignKey('user.id'))
    status = db.Column(db.Boolean, default=False)
    updated = db.Column(db.DateTime, index=True, default=datetime.utcnow)

    __table_args__ = (db.UniqueConstraint('from_id', 'to_id',
                                          name='relation'), )

    def __repr__(self):
        return "from {}, to {} status {}".format(self.from_id, self.to_id,
                                                 self.status)
示例#20
0
class Article(db.Model):
    __tablename__ = "articls"

    articls_id = db.Column(db.INT, primary_key=True, autoincrement=True)
    articls_title = db.Column(db.String(300), unique=False)
    articls_desc = db.Column(db.String(64), nullable=True)
    articls_contents = db.Column(db.Text, unique=False)
    articls_posttime = db.Column(db.DateTime)
    articls_category = db.Column(db.String(99), unique=False, default=None)
    articls_headimg = db.Column(db.String(99), unique=False, default=None)
    # user_id = db.Column(db.INTEGER, db.ForeignKey('admin_user.user_id'))  # 关联用户userID
    tag_id = db.Column(db.INTEGER, db.ForeignKey('tag.id'))  # 关联标签ID
    category_id =  db.Column(db.INTEGER, db.ForeignKey('category.id'))  # 关联分类ID
    comment = db.relationship('Comment', backref='comment', lazy='dynamic')
    tag = db.relationship('Tag', backref='tag')
    category = db.relationship('Category', backref='status')
示例#21
0
class Orders(db.Model):
    __tablename__ = "orders"
    id = db.Column(db.Integer, primary_key=True, nullable=False)
    shop_id = db.Column(db.Integer, db.ForeignKey('shops.id'), nullable=False)

    # instead of storing these attributes in the database, we will calculate them in run time, to reduce the number
    # of changes made to the database (else, when one makes a change to line items, products, etc, these values all
    # need to be recalculated

    # total_price = db.Column(db.Float, nullable=False, index=True)
    # total_cost = db.Column(db.Float, nullable=False, index=True)
    # total_income = db.Column(db.Float, nullable=False, index=True)

    lineItems = db.relationship('LineItems',
                                backref='bill',
                                lazy='dynamic',
                                cascade="save-update, merge, delete")

    def __repr__(self):
        return '<Order {}>'.format(self.id)

    @staticmethod
    def create_order(store):
        order = Orders(shop_id=store.id)
        db.session.add(order)
        db.session.commit()
        return order.id
示例#22
0
class Products(db.Model):
    __tablename__ = "products"
    id = db.Column(db.Integer, primary_key=True, nullable=False)
    shop_id = db.Column(db.Integer, db.ForeignKey('shops.id'), nullable=False)
    product_name = db.Column(db.String(64), nullable=False)
    price = db.Column(db.Float, nullable=False, index=True)
    cost = db.Column(db.Float, nullable=False, index=True)

    line_items = db.relationship('LineItems',
                                 backref='type',
                                 lazy='dynamic',
                                 cascade="save-update, merge, delete")

    def __repr__(self):
        return '<Products {}>'.format(self.product_name)

    @staticmethod
    def create_product(name, store, price, cost):
        product = Products.query.filter(Products.shop_id == store.id).filter(
            Products.product_name == name).first()
        if product is not None:
            return False

        product = Products(product_name=name,
                           shop_id=store.id,
                           price=price,
                           cost=cost)
        db.session.add(product)
        db.session.commit()
        return product.id
示例#23
0
文件: uf.py 项目: Ronyrm/sisnutriapi
class UF(db.Model):
    __tablename__ = 'uf'
    id = db.Column(db.Integer, primary_key=True)
    nome = db.Column(db.String(100))
    sigla = db.Column(db.String(2))
    idregiao = db.Column(db.Integer, db.ForeignKey('regiao.id'))
    regiao = db.relationship("Regiao")
示例#24
0
class Interfaces(Base):
    __tablename__ = "interfaces"
    interface_name = db.Column(db.String(32), nullable=False, comment="接口名")
    interface_desc = db.Column(db.String(500), default="", comment='描述')
    tester = db.Column(db.String(32), comment='测试人')

    project_id = db.Column(db.INT, db.ForeignKey("project.id"))
    case = db.relationship("Case", backref="interface", lazy="dynamic")

    def __init__(self, name, desc, pid):
        self.interface_desc = desc
        self.interface_name = name
        self.project_id = pid

    @classmethod
    def assertName(cle, name):
        res = cle.query.filter_by(interface_name=name).first()
        if res:
            handelAbort("interface_name 重复!")

    @classmethod
    def assertIdExisted(cls, id):
        p = cls.query.get(id)
        if not p or p.status == 0:
            handelAbort("interface 不存在或删除")

    def delete(self):
        self.status = self.DELETE_STATUS
        try:
            for case in self.case_records:
                case.status = self.DELETE_STATUS
            db.session.commit()
        except Exception as e:
            log.exception(e)
            db.session.rollback()
示例#25
0
class UMethod(Base):
    __tablename__ = 'umethod'
    project_id = db.Column(db.Integer,
                           db.ForeignKey("project.id"),
                           comment="項目Id")
    name = db.Column(db.String(200), unique=True, comment="方法名称")
    desc = db.Column(db.String(200), nullable=True, comment="方法描述")
    body = db.Column(db.TEXT, comment="步骤step")
    creator = db.Column(db.String(20), comment="创建人")
    updater = db.Column(db.String(20), comment="修改人")

    def __init__(self, pid, name, body, creator, desc=""):
        # 验证projectID
        Project.assertIdExisted(pid)
        # 验证 name
        self.assertName(name)

        self.project_id = pid
        self.name = name
        self.desc = desc
        self.body = body
        self.creator = creator

    def __repr__(self):
        return f"name:{self.name}"
示例#26
0
class User(Base):
    __tablename__ = 'user'
    username = db.Column(db.String(32), unique=True, index=True, comment="用户名")
    password = db.Column(db.String(128))
    email = db.Column(db.String(52), nullable=True, unique=False)
    phone = db.Column(db.String(12), unique=False, nullable=True)
    gender = db.Column(db.Boolean, default=True, nullable=True)  # 1 男 2 女
    admin = db.Column(db.Boolean, default=False)

    # 所属部门
    part = db.Column(db.Integer, db.ForeignKey("part.id"), nullable=True)

    def __init__(self,
                 username,
                 password,
                 phone=None,
                 email=None,
                 partId=None,
                 admin=None,
                 gender=None):
        self.username = username
        self.part = partId
        self.admin = admin
        self.email = email
        self.gender = gender
        self.phone = phone
        self.hash_password(password)

    def get_userId(self):
        return self.id

    def is_superuser(self):
        return self.admin

    def hash_password(self, password):
        self.password = generate_password_hash(password)

    def verify_password(self, password):
        return check_password_hash(self.password, password)

    def generate_auth_token(self, expires_in=30):
        return jwt.encode({
            'id': self.id,
            'exp': time.time() + expires_in
        },
                          current_app.config['SECRET_KEY'],
                          algorithm='HS256')

    @staticmethod
    def verify_token(token):
        try:
            data = jwt.decode(token,
                              current_app.config['SECRET_KEY'],
                              algorithms=['HS256'])
        except:
            return None
        return User.query.get(data['id'])

    def __repr__(self):
        return f"username:{self.username}"
示例#27
0
class User(db.Model):
    __tablename = 'users'
    id = db.Column(db.Integer, primary_key=True, index=True)
    username = db.Column(db.String(64), unique=True)
    role_id = db.Column(db.Integer, db.ForeignKey('roles.id'))

    def __repr__(self):
        return '<User %r>' % self.username
示例#28
0
class Post(SearchableMixin, db.Model):
    id = db.Column(db.Integer, primary_key=True)
    body = db.Column(db.String(140))
    timestamp = db.Column(db.DateTime, index=True, default=datetime.utcnow)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'))
    __searchable__ = ['body']
    def __repr__(self):
        return '<Post {}>'.format(self.body)
示例#29
0
class Family(db.Model):
    """
    用户关联的族群实例
    """
    __tablename__ = 'familyr'

    f_id = db.Column(db.Integer, primary_key=True, autoincrement=True, comment="族群号")
    f_member_num = db.Column(db.Integer, default=0, comment="族群人数")
    f_create_time = db.Column(db.DateTime, default=datetime.now, comment="创建时间")
    f_creator = db.Column(db.String(64), db.ForeignKey('user.u_email'), comment="族群的创建者的邮箱(id)")
    u_name = db.Column(db.String(32), db.ForeignKey('user.u_email'), comment="创建者昵称")

    def __init__(self, creator):
        self.f_creator = creator

    def save(self):
        db.session.add(self)
        db.session.commit()
示例#30
0
class Metaatleta(db.Model):
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    descricao = db.Column(db.String(50), nullable=False)
    create_on = db.Column(db.DateTime, default=datetime.datetime.now())
    pesoinicial = db.Column(db.NUMERIC(precision=8, asdecimal=False, scale=2))
    pesofinal = db.Column(db.NUMERIC(precision=8, asdecimal=False, scale=2))
    percentual_gordura = db.Column(
        db.NUMERIC(precision=8, asdecimal=False, scale=2))
    nivelatividade = db.Column(
        db.NUMERIC(precision=8, asdecimal=False, scale=2))
    # 0-Harris Benedict Original 1-Harris Benedict Revisada 2-Mifflin St Jeor 3-Katch-McArdle
    frmharrisbenedictoriginal = db.Column(db.String(1), nullable=False)
    frmharrisbenedictrevisada = db.Column(db.String(1), nullable=False)
    frmmifflin = db.Column(db.String(1), nullable=False)
    frmkatch = db.Column(db.String(1), nullable=False)
    valtmb = db.Column(db.NUMERIC(precision=8, asdecimal=False, scale=0))
    valgcd = db.Column(db.NUMERIC(precision=8, asdecimal=False, scale=0))
    # P-perda de peso G-ganho de peso
    tipometa = db.Column(db.String(1), nullable=False)
    valtotkclmeta = db.Column(db.NUMERIC(precision=8, asdecimal=False,
                                         scale=0))
    valtotkclexercicio = db.Column(
        db.NUMERIC(precision=8, asdecimal=False, scale=0))
    valalvocalorico = db.Column(
        db.NUMERIC(precision=8, asdecimal=False, scale=0))

    # Proteina
    percproteina = db.Column(db.NUMERIC(precision=8, asdecimal=False, scale=2))
    valkcalproteina = db.Column(
        db.NUMERIC(precision=8, asdecimal=False, scale=2))
    valgramasproteina = db.Column(
        db.NUMERIC(precision=8, asdecimal=False, scale=2))
    valgrkgproteina = db.Column(
        db.NUMERIC(precision=8, asdecimal=False, scale=2))
    # Carboidrato
    perccarb = db.Column(db.NUMERIC(precision=8, asdecimal=False, scale=2))
    valkcalcarb = db.Column(db.NUMERIC(precision=8, asdecimal=False, scale=2))
    valgramascarbo = db.Column(
        db.NUMERIC(precision=8, asdecimal=False, scale=2))
    valgrkgcarbo = db.Column(db.NUMERIC(precision=8, asdecimal=False, scale=2))
    # Gordura
    percfat = db.Column(db.NUMERIC(precision=8, asdecimal=False, scale=2))
    valkcalfat = db.Column(db.NUMERIC(precision=8, asdecimal=False, scale=2))
    valgramasgordura = db.Column(
        db.NUMERIC(precision=8, asdecimal=False, scale=2))
    valgrkggordura = db.Column(
        db.NUMERIC(precision=8, asdecimal=False, scale=2))
    # A-Aberto F-Fechada
    status = db.Column(db.String(1), nullable=False)
    idatleta = db.Column(db.Integer,
                         db.ForeignKey('atleta.id', ondelete='CASCADE'))
    atleta = db.relationship("Atleta", back_populates="metaatleta")
    totaldiasprevisto = db.Column(db.Integer)
    dataprevisaofinal = db.Column(db.DateTime)
    datafinalizada = db.Column(db.DateTime)
    pesofinalizado = db.Column(
        db.NUMERIC(precision=8, asdecimal=False, scale=2))