def _compute_descricao(self):
        for al_pis_cofins in self:
            if al_pis_cofins.al_pis == -1:
                al_pis_cofins.descricao = u'Não tributado'
            else:
                if al_pis_cofins.md_pis_cofins == MODALIDADE_BASE_PIS_ALIQUOTA:
                    al_pis_cofins.descricao = u'PIS ' + \
                        formata_valor(al_pis_cofins.al_pis or 0) + '%'
                    al_pis_cofins.descricao += u'; COFINS ' + \
                        formata_valor(al_pis_cofins.al_cofins or 0) + '%'

                elif (al_pis_cofins.md_pis_cofins ==
                      MODALIDADE_BASE_PIS_QUANTIDADE):
                    al_pis_cofins.descricao = (
                        u'por quantidade, PIS a R$ ' +
                        formata_valor(al_pis_cofins.al_pis))
                    al_pis_cofins.descricao += (
                        u'; COFINS a R$ ' +
                        formata_valor(al_pis_cofins.al_cofins))

                al_pis_cofins.descricao += (
                    u' - CST ' + al_pis_cofins.cst_pis_cofins_entrada)
                al_pis_cofins.descricao += (u' entrada, ' +
                                            al_pis_cofins.cst_pis_cofins_saida)
                al_pis_cofins.descricao += u' saída'

                if al_pis_cofins.codigo_justificativa:
                    al_pis_cofins.descricao += u' - justificativa '
                    al_pis_cofins.descricao += (
                        al_pis_cofins.codigo_justificativa)
Beispiel #2
0
    def _compute_descricao(self):
        for al_icms in self:
            if al_icms.al_icms == -1:
                al_icms.descricao = u'Não tributado'
            else:
                al_icms.descricao = formata_valor(al_icms.al_icms or 0) + '%'

                if (al_icms.md_icms !=
                        MODALIDADE_BASE_ICMS_PROPRIO_VALOR_OPERACAO):
                    if al_icms.md_icms == \
                            MODALIDADE_BASE_ICMS_PROPRIO_MARGEM_VALOR_AGREGADO:
                        al_icms.descricao += u', por MVA de ' + \
                            formata_valor(al_icms.pr_icms,
                                          casas_decimais=4) + '%'
                    elif al_icms.md_icms == MODALIDADE_BASE_ICMS_PROPRIO_PAUTA:
                        al_icms.descricao += u', por pauta de R$ ' + \
                            formata_valor(al_icms.pr_icms, casas_decimais=4)
                    elif al_icms.md_icms == \
                            MODALIDADE_BASE_ICMS_PROPRIO_PRECO_TABELADO_MAXIMO:
                        al_icms.descricao += u', por preço máximo de R$ ' + \
                                             formata_valor(
                                                 al_icms.pr_icms,
                                                 casas_decimais=4)

                if al_icms.rd_icms != 0:
                    al_icms.descricao += u', com redução de ' + \
                        formata_valor(al_icms.rd_icms) + '%'

                if al_icms.importado:
                    al_icms.descricao += u' (padrão para importados)'
Beispiel #3
0
    def _descricao(self):
        if self.al_icms == -1:
            self.descricao = 'Não tributado'
        else:
            self.descricao = formata_valor(self.al_icms or 0) + '%'

            if self.md_icms == MODALIDADE_BASE_ICMS_ST_PRECO_TABELADO_MAXIMO:
                self.descricao += ', por preço máximo'
            elif self.md_icms == MODALIDADE_BASE_ICMS_ST_LISTA_NEGATIVA:
                self.descricao += ', por lista negativa'
            elif self.md_icms == MODALIDADE_BASE_ICMS_ST_LISTA_POSITIVA:
                self.descricao += ', por lista positiva'
            elif self.md_icms == MODALIDADE_BASE_ICMS_ST_LISTA_NEUTRA:
                self.descricao += ', por lista neutra'
            elif self.md_icms == MODALIDADE_BASE_ICMS_ST_MARGEM_VALOR_AGREGADO:
                self.descricao += ', por MVA'
            elif self.md_icms == MODALIDADE_BASE_ICMS_ST_PAUTA:
                self.descricao += ', por pauta'

            if self.pr_icms:
                if self.md_icms == MODALIDADE_BASE_ICMS_ST_MARGEM_VALOR_AGREGADO:
                    self.descricao += ' de ' + formata_valor(self.pr_icms, casas_decimais=4) + '%'
                else:
                    self.descricao += ' de R$ ' + formata_valor(self.pr_icms, casas_decimais=4)

            if self.rd_icms != 0:
                self.descricao += ', com redução de ' + formata_valor(self.rd_icms) + '%'

            if self.rd_mva != 0:
                self.descricao += ', com MVA reduzido em ' + formata_valor(self.rd_mva) + '% para o SIMPLES'
 def _valor_provento(self):
     for record in self:
         record.quantity_fmt = valor.formata_valor(record.quantity)
         if record.salary_rule_id.category_id.code == "PROVENTO":
             record.valor_provento = record.total
             record.valor_provento_fmt = \
                 valor.formata_valor(record.valor_provento)
         else:
             record.valor_provento = 0.00
             record.valor_provento_fmt = ''
Beispiel #5
0
 def _compute_valor_provento(self):
     for line in self:
         line.quantity_fmt = valor.formata_valor(line.quantity)
         if line.category_id.code in ['PROVENTO', 'FERIAS']:
             line.valor_provento = line.total
             line.valor_provento_fmt = \
                 valor.formata_valor(line.valor_provento)
         else:
             line.valor_provento = 0.00
             line.valor_provento_fmt = ''
Beispiel #6
0
    def _descricao(self):
        if self.al_ipi == -1:
            self.descricao = 'Não tributado'
        else:
            if self.md_ipi == MODALIDADE_BASE_IPI_ALIQUOTA:
                self.descricao = formata_valor(self.al_ipi or 0) + '%'
            elif self.md_ipi == MODALIDADE_BASE_IPI_QUANTIDADE:
                self.descricao = 'por quantidade, a R$ ' + formata_valor(
                    self.pr_ipi)

            self.descricao += ' - CST ' + self.cst_ipi_entrada
            self.descricao += ' entrada, ' + self.cst_ipi_saida
            self.descricao += ' saída'
    def _compute_descricao(self):
        for al_ipi in self:
            if al_ipi.al_ipi == -1:
                al_ipi.descricao = 'Não tributado'

            else:
                if al_ipi.md_ipi == MODALIDADE_BASE_IPI_ALIQUOTA:
                    al_ipi.descricao = formata_valor(al_ipi.al_ipi or 0) + '%'

                elif al_ipi.md_ipi == MODALIDADE_BASE_IPI_QUANTIDADE:
                    al_ipi.descricao = 'por quantidade, a R$ ' + \
                        formata_valor(al_ipi.al_ipi or 0)

                al_ipi.descricao += ' - CST ' + al_ipi.cst_ipi_entrada
                al_ipi.descricao += ' entrada, ' + al_ipi.cst_ipi_saida
                al_ipi.descricao += ' saída'
Beispiel #8
0
def popula_valor(self, tipo):

    # Popula as linhas para impressão
    coluna = 1
    linhas = []
    for registro in self.rescisao_ids:
        if registro.tipo in tipo:
            line = {}
            line['display_name'] = str(
                registro.codigo_fmt) + ' ' + registro.name
            line['valor_fmt'] = valor.formata_valor(registro.valor)
            if coluna == 1:
                objeto1 = item_obj(line)
                coluna = 2
            elif coluna == 2:
                objeto2 = item_obj(line)
                coluna = 3
            elif coluna == 3:
                objeto3 = item_obj(line)
                linha_obj = linha(objeto1, objeto2, objeto3)
                linhas.append(linha_obj)
                coluna = 1
    objeto_branco = item_obj({'display_name': '', 'valor_fmt': ''})
    if coluna == 3:
        linhas.append(linha(objeto1, objeto2, objeto_branco))
    elif coluna == 2:
        linhas.append(linha(objeto1, objeto_branco, objeto_branco))

    return linhas
    def _compute_descricao(self):
        for carta_correcao in self:
            txt = 'CC-e nº '
            txt += \
                formata_valor(carta_correcao.sequencia or 1, casas_decimais=0)
            txt += ' - '
            txt += carta_correcao.documento_id.descricao

            carta_correcao.descricao = txt
Beispiel #10
0
 def _compute_valor_deducao(self):
     for line in self:
         if line.category_id.code in ['DEDUCAO', 'INSS', 'IRPF']:
             line.valor_deducao = line.total
             line.valor_deducao_fmt = \
                 valor.formata_valor(line.valor_deducao)
         else:
             line.valor_deducao = 0.00
             line.valor_deducao_fmt = ''
    def _monta_nfe_cobranca(self, cobr):
        if self.ind_forma_pagamento not in \
                (IND_FORMA_PAGAMENTO_A_VISTA, IND_FORMA_PAGAMENTO_A_PRAZO):
            return
        cobr.fat.nFat.valor = formata_valor(self.numero, casas_decimais=0)
        cobr.fat.vOrig.valor = str(D(self.vr_operacao))
        cobr.fat.vDesc.valor = str(D(self.vr_desconto))
        cobr.fat.vLiq.valor = str(D(self.vr_fatura))

        for duplicata in self.duplicata_ids:
            cobr.dup.append(duplicata.monta_nfe())
 def _valor_deducao(self):
     for record in self:
         if record.salary_rule_id.category_id.code in ["DEDUCAO"] \
                 or record.salary_rule_id.code == "INSS" \
                 or record.salary_rule_id.code == "IRPF":
             record.valor_deducao = record.total
             record.valor_deducao_fmt = \
                 valor.formata_valor(record.valor_deducao)
         else:
             record.valor_deducao = 0.00
             record.valor_deducao_fmt = ''
Beispiel #13
0
    def _descricao(self):
        if self.al_pis == -1:
            self.descricao = 'Não tributado'
        else:
            if self.md_pis_cofins == MODALIDADE_BASE_PIS_ALIQUOTA:
                self.descricao = 'PIS ' + formata_valor(self.al_pis or 0) + '%'
                self.descricao += '; COFINS ' + formata_valor(self.al_cofins
                                                              or 0) + '%'

            elif self.md_pis_cofins == MODALIDADE_BASE_PIS_QUANTIDADE:
                self.descricao = 'por quantidade, PIS a R$ ' + formata_valor(
                    self.al_pis)
                self.descricao += '; COFINS a R$ ' + formata_valor(
                    self.al_cofins)

            self.descricao += ' - CST ' + self.cst_pis_cofins_entrada
            self.descricao += ' entrada, ' + self.cst_pis_cofins_saida
            self.descricao += ' saída'

            if self.codigo_justificativa:
                self.descricao += ' - justificativa '
                self.descricao += self.codigo_justificativa
    def _descricao(self):
        if self.al_icms == -1:
            self.descricao = 'Não tributado'
        else:
            self.descricao = formata_valor(self.al_icms or 0) + '%'

            if self.md_icms != MODALIDADE_BASE_ICMS_PROPRIO_VALOR_OPERACAO:
                if self.md_icms == MODALIDADE_BASE_ICMS_PROPRIO_MARGEM_VALOR_AGREGADO:
                    self.descricao += ', por MVA de ' + formata_valor(
                        self.pr_icms, casas_decimais=4) + '%'
                elif self.md_icms == MODALIDADE_BASE_ICMS_PROPRIO_PAUTA:
                    self.descricao += ', por pauta de R$ ' + formata_valor(
                        self.pr_icms, casas_decimais=4)
                elif self.md_icms == MODALIDADE_BASE_ICMS_PROPRIO_PRECO_TABELADO_MAXIMO:
                    self.descricao += ', por preço máximo de R$ ' + formata_valor(
                        self.pr_icms, casas_decimais=4)

            if self.rd_icms != 0:
                self.descricao += ', com redução de ' + formata_valor(
                    self.rd_icms) + '%'

            if self.importado:
                self.descricao += ' (padrão para importados)'
    def _compute_descricao(self):
        for documento in self:
            txt = TIPO_EMISSAO_DICT[documento.emissao]

            if documento.emissao == TIPO_EMISSAO_PROPRIA:
                txt += ' - ' + ENTRADA_SAIDA_DICT[documento.entrada_saida]

            txt += ' - ' + documento.modelo
            txt += ' - ' + (documento.serie or '')
            txt += ' - ' + formata_valor(documento.numero, casas_decimais=0)
            txt += ' - ' + formata_data(documento.data_emissao)

            if not documento.participante_id.cnpj_cpf:
                txt += ' - Consumidor não identificado'

            elif documento.participante_id.razao_social:
                txt += ' - ' + documento.participante_id.razao_social
                txt += ' - ' + documento.participante_id.cnpj_cpf
            else:
                txt += ' - ' + documento.participante_id.nome
                txt += ' - ' + documento.participante_id.cnpj_cpf

            documento.descricao = txt
Beispiel #16
0
 def _compute_arredondamento(self):
     for linha in self:
         linha.round_amount = linha.amount
         linha.round_total = linha.total
         linha.round_total_fmt = valor.formata_valor(linha.round_total)
Beispiel #17
0
 def _valor_total_folha(self):
     for holerite in self:
         total = 0.00
         total_proventos = 0.00
         total_descontos = 0.00
         base_inss = 0.00
         base_irpf = 0.00
         base_fgts = 0.00
         fgts = 0.00
         inss = 0.00
         irpf = 0.00
         codigo = {}
         codigo['BASE_FGTS'] = \
             holerite.env\
             .ref('l10n_br_hr_payroll.hr_salary_rule_BASE_FGTS').code
         codigo['BASE_INSS'] = \
             holerite.env\
             .ref('l10n_br_hr_payroll.hr_salary_rule_BASE_INSS').code
         codigo['BASE_IRPF'] = \
             holerite.env\
             .ref('l10n_br_hr_payroll.hr_salary_rule_BASE_IRPF').code
         codigo['FGTS'] = \
             holerite.env\
             .ref('l10n_br_hr_payroll.hr_salary_rule_FGTS').code
         codigo['INSS'] = \
             holerite.env\
             .ref('l10n_br_hr_payroll.hr_salary_rule_INSS').code
         codigo['IRPF'] = \
             holerite.env\
             .ref('l10n_br_hr_payroll.hr_salary_rule_IRPF').code
         for line in holerite.line_ids:
             total += line.valor_provento - line.valor_deducao
             total_proventos += line.valor_provento
             total_descontos += line.valor_deducao
             if codigo['BASE_FGTS']:
                 base_fgts = line.total
             elif codigo['BASE_INSS']:
                 base_inss = line.total
             elif codigo('BASE_IRPF'):
                 base_irpf = line.total
             elif codigo['FGTS']:
                 fgts = line.total
             elif codigo['INSS']:
                 inss = line.total
             elif codigo['IRPF']:
                 irpf = line.total
         holerite.total_folha = total
         holerite.total_proventos = total_proventos
         holerite.total_descontos = total_descontos
         holerite.base_fgts = base_fgts
         holerite.base_inss = base_inss
         holerite.base_irpf = base_irpf
         holerite.fgts = fgts
         holerite.inss = inss
         holerite.irpf = irpf
         # Formato
         holerite.data_admissao_fmt =\
             data.formata_data(holerite.contract_id.date_start)
         holerite.salario_base_fmt =\
             valor.formata_valor(holerite.contract_id.wage)
         holerite.total_folha_fmt =\
             valor.formata_valor(holerite.total_folha)
         holerite.total_proventos_fmt =\
             valor.formata_valor(holerite.total_proventos)
         holerite.total_descontos_fmt =\
             valor.formata_valor(holerite.total_descontos)
         holerite.base_fgts_fmt = valor.formata_valor(holerite.base_fgts)
         holerite.base_inss_fmt = valor.formata_valor(holerite.base_inss)
         holerite.base_irpf_fmt = valor.formata_valor(holerite.base_irpf)
         holerite.fgts_fmt = valor.formata_valor(holerite.fgts)
         holerite.inss_fmt = valor.formata_valor(holerite.inss)
         holerite.irpf_fmt = valor.formata_valor(holerite.irpf)
Beispiel #18
0
 def _compute_valor_total_folha(self):
     for holerite in self:
         total = 0.00
         total_proventos = 0.00
         total_descontos = 0.00
         base_inss = 0.00
         base_irpf = 0.00
         base_fgts = 0.00
         fgts = 0.00
         inss = 0.00
         irpf = 0.00
         #            codigo = {}
         #            codigo['BASE_FGTS'] = \
         #                holerite.env\
         #                .ref('l10n_br_hr_payroll.hr_salary_rule_BASE_FGTS').code
         #            codigo['BASE_INSS'] = \
         #                holerite.env\
         #                .ref('l10n_br_hr_payroll.hr_salary_rule_BASE_INSS').code
         #            codigo['BASE_IRPF'] = \
         #                holerite.env\
         #                .ref('l10n_br_hr_payroll.hr_salary_rule_BASE_IRPF').code
         #            codigo['FGTS'] = \
         #                holerite.env\
         #                .ref('l10n_br_hr_payroll.hr_salary_rule_FGTS').code
         #            codigo['INSS'] = \
         #                holerite.env\
         #                .ref('l10n_br_hr_payroll.hr_salary_rule_INSS').code
         #            codigo['IRPF'] = \
         #                holerite.env\
         #                .ref('l10n_br_hr_payroll.hr_salary_rule_IRPF').code
         for line in holerite.line_ids:
             total += line.valor_provento - line.valor_deducao
             total_proventos += line.valor_provento
             total_descontos += line.valor_deducao
             if line.code in ['BASE_FGTS', 'BASE_FGTS_13']:
                 base_fgts += line.total
             elif line.code in ['BASE_INSS', 'BASE_INSS_13']:
                 base_inss += line.total
             elif line.code == 'BASE_IRPF':
                 base_irpf = line.total
             elif line.code == 'FGTS':
                 fgts = line.total
             elif line.code == 'INSS':
                 inss = line.total
             elif line.code == 'IRPF':
                 irpf = line.total
         holerite.total_folha = total
         holerite.total_proventos = total_proventos
         holerite.total_descontos = total_descontos
         holerite.base_fgts = base_fgts
         holerite.base_inss = base_inss
         holerite.base_irpf = base_irpf
         holerite.fgts = fgts
         holerite.inss = inss
         holerite.irpf = irpf
         # Formato
         holerite.data_admissao_fmt = \
             data.formata_data(holerite.contract_id.date_start)
         holerite.salario_base_fmt = \
             valor.formata_valor(holerite.contract_id.wage)
         holerite.total_folha_fmt = \
             valor.formata_valor(holerite.total_folha)
         holerite.total_proventos_fmt = \
             valor.formata_valor(holerite.total_proventos)
         holerite.total_descontos_fmt = \
             valor.formata_valor(holerite.total_descontos)
         holerite.base_fgts_fmt = valor.formata_valor(holerite.base_fgts)
         holerite.base_inss_fmt = valor.formata_valor(holerite.base_inss)
         holerite.base_irpf_fmt = valor.formata_valor(holerite.base_irpf)
         holerite.fgts_fmt = valor.formata_valor(holerite.fgts)
         holerite.inss_fmt = valor.formata_valor(holerite.inss)
         holerite.irpf_fmt = valor.formata_valor(holerite.irpf)
         holerite.data_extenso = data.data_por_extenso(fields.Date.today())