Skip to content

Instantly share code, notes, and snippets.

@fellipeh
Created November 22, 2013 13:21
Show Gist options
  • Save fellipeh/7599741 to your computer and use it in GitHub Desktop.
Save fellipeh/7599741 to your computer and use it in GitHub Desktop.
Models com problema no FK
class Produto(models.Model):
status = models.CharField(u'Status', max_length=1, default='A', choices=Ativo_Inativo_CHOICE)
referencia = models.CharField(u'Referência', max_length=20)
descricao = models.CharField(u'Descricão', max_length=150, unique=True)
codigo_barra = models.CharField(u'Cod. barra', max_length=13, blank=True, null=True , unique=True)
codigo_fabrica = models.CharField(u'Cod. Fábrica', max_length=25, blank=True, null=True)
codigo_auxiliar = models.CharField(u'Cod. Auxiliar', max_length=25, blank=True, null=True)
numero_original = models.CharField(u'Nº Original', max_length=25, blank=True, null=True)
localizacao = models.CharField(u'Localização', max_length=15, blank=True, null=True)
fornecedor = models.ForeignKey(Pessoa, verbose_name=u'Fornecedor')
grupo = models.ForeignKey(Grupo, verbose_name=u'Grupo')
usa_composicao = models.CharField(u'Composição', max_length=1, default='S', choices=Sim_Nao_CHOICE)
sai_tabelapreco = models.CharField(u'Tab. Preço', max_length=1, default='S', choices=Sim_Nao_CHOICE)
codtributario = models.ForeignKey(Codtributario , verbose_name=u'Cod. Tributário')
ncm = models.CharField(u'Localização', max_length=15, blank=True, null=True)
aliquota_cupom = models.DecimalField(u'Aliq. Cupom', max_digits=18, decimal_places=2, default=0, blank=True, null=True )
unidade = models.ForeignKey(Unidade, related_name='unidade', verbose_name=u'Un.', on_delete=models.PROTECT)
unidade_aux = models.ForeignKey(Unidade, related_name='unidade_aux', verbose_name=u'Un.AUX.', on_delete=models.PROTECT)
quantidade_aux = models.DecimalField(u'Qtd.AUX.', max_digits=18, decimal_places=2, default=0, blank=True, null=True )
data_fabricacao = models.DateField(u'Data fabricação')
data_validade = models.DateField(u'Data validade')
margem_lucro = models.DecimalField(u'Margem lucro', max_digits=18, decimal_places=2, default=0, blank=True, null=True )
custo_operacional = models.DecimalField(u'Custo Operacional', max_digits=18, decimal_places=2, default=0, blank=True, null=True )
estoque_minimo = models.DecimalField(u'Estoque minimo', max_digits=18, decimal_places=2, default=0, blank=True, null=True )
custo_unitario = models.DecimalField(u'Custo Unit.', max_digits=18, decimal_places=2, default=0, blank=True, null=True )
custo_total = models.DecimalField(u'Custo Total', max_digits=18, decimal_places=2, default=0, blank=True, null=True )
custo_medio = models.DecimalField(u'Custo Médio', max_digits=18, decimal_places=2, default=0, blank=True, null=True )
estoque_atual = models.DecimalField(u'Estoq. Atual', max_digits=18, decimal_places=2, default=0, blank=True, null=True )
estoque_disponivel = models.DecimalField(u'Estoq. Disp.', max_digits=18, decimal_places=2, default=0, blank=True, null=True )
estoque_reservado = models.DecimalField(u'Estoque Reserv.', max_digits=18, decimal_places=2, default=0, blank=True, null=True )
peso_liquido = models.DecimalField(u'Peso Liq.', max_digits=18, decimal_places=2, default=0, blank=True, null=True )
peso_bruto = models.DecimalField(u'Peso Brut.', max_digits=18, decimal_places=2, default=0, blank=True, null=True )
preco_peso = models.DecimalField(u'Preço peso', max_digits=18, decimal_places=2, default=0, blank=True, null=True )
comissao_produto = models.DecimalField(u'Comissão Prod.', max_digits=18, decimal_places=2, default=0, blank=True, null=True )
infomacao_complento= models.TextField(u'Especificação/Obeservações ( Sai na inf. complementar da NFE )', max_length=650,blank=True,null=True)
codigo_tipi = models.CharField(u'Cod. TIPI', max_length=15, blank=True, null=True)
genero = models.CharField(u'Gênero', max_length=15, blank=True, null=True)
texto_etiqueta = models.CharField(u'Texto etiqueta', max_length=25, blank=True, null=True)
data_cadastro = models.DateField(u'Data cadastro', default=datetime.now() )
data_atualizacao = models.DateField(u'Data atualização', default=datetime.now())
class Meta:
ordering = ['referencia']
def __unicode__(self):
return self.descricao
class Produto_composicao(models.Model):
produto = models.ForeignKey( Produto, related_name='produto', verbose_name=u'Produto')
produto_composicao = models.ForeignKey( Produto, related_name='produto_composicao', verbose_name=u'Prod.Composição')
quantidade = models.DecimalField(u'Quantidade', max_digits=18, decimal_places=2, default=0, blank=True, null=True )
percentual = models.DecimalField(u'Percentual', max_digits=18, decimal_places=2, default=0, blank=True, null=True )
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment