예제 #1
0
class EstoqueAnalitico(db.Model):
    """
    Representa a tabela ESTOQUE_ANALITICO do Ciss
    """

    __bind_key__ = 'ciss'
    __tablename__ = 'ESTOQUE_ANALITICO'

    idPlanilha = db.Column('IDPLANILHA', db.Integer, primary_key=True)
    idEmpresa = db.Column('IDEMPRESA', db.Integer, primary_key=True)
    numSequencia = db.Column('NUMSEQUENCIA', db.Integer, primary_key=True)

    idVendedor = db.Column('IDVENDEDOR',
                           db.ForeignKey('CLIENTE_FORNECEDOR.IDCLIFOR'))
    idProduto = db.Column('IDPRODUTO',
                          db.ForeignKey('PRODUTOS_VIEW.IDPRODUTO'))
    idSubProduto = db.Column('IDSUBPRODUTO',
                             db.ForeignKey('PRODUTOS_VIEW.IDSUBPRODUTO'))
    qtdProduto = db.Column('QTDPRODUTO', db.Numeric(12, 3))
    valTotalLiq = db.Column('VALTOTLIQUIDO', db.Numeric(15, 6))
    valTotalBruto = db.Column('VALTOTBRUTO', db.Numeric(15, 6))
    dtMovimento = db.Column('DTMOVIMENTO', db.Date())
    idOperacao = db.Column('IDOPERACAO', db.Integer)

    join_produtos = "and_(ViewProduto.id_produto == EstoqueAnalitico.idProduto,\
                          ViewProduto.id_subproduto == EstoqueAnalitico.idSubProduto)"

    produto = db.relationship('ViewProduto', primaryjoin=join_produtos)
    vendedor = db.relationship('ClienteFornecedor')
예제 #2
0
class CissProdutoPreco(db.Model):
    """
        Representa a tabela POLITICA_PRECO_PRODUTO
        do Ciss
    """
    __tablename__ = 'POLITICA_PRECO_PRODUTO'
    __bind_key__ = 'ciss'

    idproduto = db.Column(db.ForeignKey('PRODUTO_GRADE.idproduto'), 
                          primary_key=True)
    idsubproduto = db.Column(db.ForeignKey('PRODUTO_GRADE.idsubproduto'), 
                             primary_key=True)
    idempresa = db.Column(db.Integer, primary_key=True)
    valprecovarejo = db.Column(db.Numeric(15, 6))
    valpromvarejo = db.Column(db.Numeric(15, 6))
    dtinipromocaovar = db.Column(db.Date())
    dtfimpromocaovar = db.Column(db.Date())

    join = "and_("
    join = join + "CissProdutoPreco.idproduto==CissProdutoGrade.idproduto,"
    join = join + "CissProdutoPreco.idsubproduto==CissProdutoGrade.idsubproduto,"
    join = join + "CissProdutoPreco.idempresa==2)"

    produto = db.relationship(
        'CissProdutoGrade',
        backref='preco',
        primaryjoin=join
    )
예제 #3
0
class CissProdutoGrade(db.Model):
    """"""
    __tablename__ = 'PRODUTO_GRADE'
    __bind_key__ = 'ciss'

    idproduto = db.Column(db.ForeignKey('PRODUTO.idproduto'), primary_key=True)
    idsubproduto = db.Column(db.Integer, primary_key=True)
    subdescricao = db.Column(db.String(100))
    descrresproduto = db.Column(db.String(60))
    codbar = db.Column(db.String(20))
    idmodelo = db.Column(db.Integer)
    idtipo = db.Column(db.Integer)
    pesoliquido = db.Column(db.Numeric(12,3))
    valmultivendas = db.Column(db.Numeric(12,3))
    dtcadastro = db.Column(db.Date())
    flaginativo = db.Column(db.String(1), db.CheckConstraint(
        "flag_carga_media=='T' or flag_carga_media=='F'"))

    produto = db.relationship('CissProduto')

    join2 = "and_("
    join2 = join2 + "CissProdutoEstoque.idproduto==CissProdutoGrade.idproduto,"
    join2 = join2 + "CissProdutoEstoque.idsubproduto==CissProdutoGrade.idsubproduto,"
    join2 = join2 + "CissProdutoEstoque.idlocalestoque==1,"
    join2 = join2 + "CissProdutoEstoque.qtdatualestoque==0,"
    join2 = join2 + "CissProdutoEstoque.idempresa==2)"

    zerados = db.relationship(
        'CissProdutoEstoque',
        primaryjoin=join2
    )
예제 #4
0
class StokyMetasView(db.Model):
    """
    Representa a View STOKY_METAS do Ciss
    """

    __bind_key__ = 'ciss'
    __tablename__ = 'STOKY_METAS'

    id_planilha = db.Column('IDPLANILHA', db.Integer, primary_key=True)
    id_empresa = db.Column('IDEMPRESA',
                           db.Integer,
                           db.ForeignKey('EMPRESA.IDEMPRESA'),
                           primary_key=True)
    id_sequencia = db.Column('NUMSEQUENCIA', db.Integer, primary_key=True)
    id_vendedor = db.Column('IDVENDEDOR',
                            db.Integer,
                            db.ForeignKey('CLIENTE_FORNECEDOR.IDCLIFOR'),
                            nullable=False)
    dt_movimento = db.Column('DTMOVIMENTO', db.Date())
    id_produto = db.Column('IDSUBPRODUTO',
                           db.Integer,
                           db.ForeignKey('PRODUTOS_VIEW.IDSUBPRODUTO'),
                           nullable=False)
    id_marca = db.Column('IDMARCAFABRICANTE', db.Integer,
                         db.ForeignKey('MARCA.IDMARCAFABRICANTE'))
    val_venda = db.Column('VENDA', db.Numeric(10, 2))
    val_devolucao = db.Column('DEVOLUCAO', db.Numeric(10, 2))
    val_lucro = db.Column('LUCRO', db.Numeric(10, 2))

    # Relacionamentos da View
    vendedor = db.relationship("ClienteFornecedor")
    produto = db.relationship('ViewProduto')
    marca = db.relationship('Marca')
예제 #5
0
class ViewSaldoProduto(db.Model):
    """
    Representa a View PRODUTOS_SALDOS_VIEW do Ciss
    """

    __bind_key__ = 'ciss'
    __tablename__ = 'PRODUTOS_SALDOS_VIEW'
    id_produto = db.Column('IDPRODUTO',
                           db.ForeignKey('PRODUTOS_VIEW.IDPRODUTO'),
                           primary_key=True)
    id_subproduto = db.Column('IDSUBPRODUTO',
                              db.ForeignKey('PRODUTOS_VIEW.IDSUBPRODUTO'),
                              primary_key=True)
    id_empresa = db.Column('IDEMPRESA', db.Integer, primary_key=True)
    qtd_atual = db.Column('QTDATUALESTOQUE', db.Numeric(10, 2))
    qtd_disponivel = db.Column('QTDDISPONIVEL', db.Numeric(10, 2))
    qtd_reserva = db.Column('QTDSALDORESERVA', db.Numeric(10, 2))

    # Relacionamentos da View
    v_produto = db.relationship(
        'ViewProduto',
        primaryjoin=
        "and_(ViewSaldoProduto.id_produto == ViewProduto.id_produto, "
        "ViewSaldoProduto.id_subproduto == ViewProduto.id_subproduto)",
        backref=db.backref('v_produto_saldo'))
예제 #6
0
class CissProdutoEstoque(db.Model):
    """
        Representa a tabela ESTOQUE_SALDO_ATUAL
        do Ciss
    """
    __tablename__ = 'ESTOQUE_SALDO_ATUAL'
    __bind_key__ = 'ciss'

    idproduto = db.Column(db.ForeignKey('PRODUTO_GRADE.idproduto'), 
                          primary_key=True)
    idsubproduto = db.Column(db.ForeignKey('PRODUTO_GRADE.idsubproduto'), 
                          primary_key=True)
    idlocalestoque = db.Column(db.Integer, primary_key=True)
    idempresa = db.Column(db.Integer, primary_key=True)
    qtdatualestoque = db.Column(db.Numeric(12,3))
    dtalteracao = db.Column(db.DateTime())

    join = "and_("
    join = join + "CissProdutoEstoque.idproduto==CissProdutoGrade.idproduto,"
    join = join + "CissProdutoEstoque.idsubproduto==CissProdutoGrade.idsubproduto,"
    join = join + "CissProdutoEstoque.idlocalestoque==1,"
    join = join + "CissProdutoEstoque.idempresa==2)"

    produto = db.relationship(
        'CissProdutoGrade',
        backref='saldo',
        primaryjoin=join
    )
예제 #7
0
class CissOrcamentoProd(db.Model):
    """
        Representa a tabela ORCAMENTO_PROD
        do Ciss
    """
    __bind_key__ = 'ciss'
    __tablename__ = 'ORCAMENTO_PROD'

    idempresa = db.Column(db.Integer, primary_key=True)
    idproduto = db.Column(db.ForeignKey('PRODUTO_GRADE.idproduto'),
                          primary_key=True)
    idsubproduto = db.Column(db.ForeignKey('PRODUTO_GRADE.idsubproduto'),
                             primary_key=True)
    idorcamento = db.Column(db.ForeignKey('ORCAMENTO.idorcamento'),
                            primary_key=True)
    qtdproduto = db.Column(db.Numeric(12, 3))
    idvendedor = db.Column(db.Integer)
    valtotliquido = db.Column(db.Numeric(14, 2))
예제 #8
0
class MetasPrevisao(db.Model):
    """
    Representa a tabela METAS_PREVISAO do Ciss
    """

    __bind_key__ = 'ciss'
    __tablename__ = 'METAS_PREVISAO'

    idMeta = db.Column('IDMETA',
                       db.ForeignKey('METAS.IDMETA'),
                       primary_key=True)
    idSeq = db.Column('NUMSEQUENCIA', db.Integer, primary_key=True)
    valorVenda = db.Column('METAVLRVENDA', db.Numeric(10, 2))

    meta = db.relationship("Metas", backref=db.backref('metasPrevisao'))
예제 #9
0
class ViewContasReceber(db.Model):
    """
    Representa a View CONTAS_RECEBER_SALDOS_VIEW do Ciss
    """

    __bind_key__ = 'ciss'
    __tablename__ = 'CONTAS_RECEBER_SALDOS_VIEW'

    idEmpresa = db.Column('IDEMPRESA', db.Integer, primary_key=True)
    idCliFor = db.Column('IDCLIFOR',
                         db.ForeignKey('CLIENTE_FORNECEDOR.IDCLIFOR'),
                         primary_key=True)
    idTitulo = db.Column('IDTITULO', db.Integer, primary_key=True)
    serieNota = db.Column('SERIENOTA', db.String(3), primary_key=True)
    digTitulo = db.Column('DIGITOTITULO', db.String(2), primary_key=True)
    valTitulo = db.Column('VALTITULO', db.Numeric(14, 2))
    valLiqTitulo = db.Column('VALLIQUIDOTITULO', db.Numeric(14, 2))
    valPagoTitulo = db.Column('SUMVALPAGAMENTOTITULO', db.Numeric(14, 2))
    dtMovimento = db.Column('DTMOVIMENTO', db.Date())
    dtVencimento = db.Column('DTVENCIMENTO', db.Date())
    jurosMora = db.Column('SUMVALJUROSMORA', db.Numeric(14, 2))
    jurosCobrado = db.Column('SUMVALJUROSCOBRADO', db.Numeric(14, 2))

    cliente = db.relationship('ClienteFornecedor')
예제 #10
0
class CissProdutoGrade(db.Model):
    """
        Representa a tabela PRODUTO_GRADE
        do Ciss
    """
    __tablename__ = 'PRODUTO_GRADE'
    __bind_key__ = 'ciss'

    idproduto = db.Column(db.ForeignKey('PRODUTO.idproduto'), primary_key=True)
    idsubproduto = db.Column(db.Integer, primary_key=True)
    subdescricao = db.Column(db.String(100))
    descrresproduto = db.Column(db.String(60))
    codbar = db.Column(db.String(20))
    idmodelo = db.Column(db.Integer)
    idtipo = db.Column(db.Integer)
    pesoliquido = db.Column(db.Numeric(12,3))
    valmultivendas = db.Column(db.Numeric(12,3))
    dtcadastro = db.Column(db.Date())
    ncm = db.Column(db.ForeignKey('NCM.ncm'))
    flaginativo = db.Column(db.String(1), db.CheckConstraint(
        "flaginativo='T' or flaginativo='F'"))

    produto = db.relationship('CissProduto')

    join = "and_("
    join = join + "CissProdutoGrade.idproduto == CissConfereMercadoria.idproduto,"
    join = join + "CissProdutoGrade.idsubproduto == CissConfereMercadoria.idsubproduto)"
    join_confere_mercadoria = join
    
    confere_mercadoria = db.relationship(
        'CissConfereMercadoria',
        primaryjoin=join_confere_mercadoria,
        backref='produto_grade_confere'
    )

    join = "and_("
    join = join + "CissProdutoGrade.idproduto == CissProdutoTributacao.idproduto,"
    join = join + "CissProdutoGrade.idsubproduto == CissProdutoTributacao.idsubproduto)"
    join_produto_tributacao = join

    produto_tributacao = db.relationship(
        'CissProdutoTributacao',
        primaryjoin=join_produto_tributacao,
        backref='produto_grade_tributacao'
    )

    join = "and_("
    join = join + "CissProdutoGrade.idproduto == CissProdutoFornecedor.idproduto,"
    join = join + "CissProdutoGrade.idsubproduto == CissProdutoFornecedor.idsubproduto)"
    join_codigo_fornecedor = join

    codigo_fornecedor = db.relationship(
        'CissProdutoFornecedor',
        primaryjoin=join_codigo_fornecedor,
        backref='produto_grade'
    )

    join = "and_(CissNcm.ncm == CissProdutoGrade.ncm)"
    join_ncm_produto = join
    
    ncm_produto = db.relationship(
        'CissNcm',
        primaryjoin=join_ncm_produto,
        backref='produtos'
    )