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)
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)'
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 = ''
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 = ''
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'
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
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 = ''
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
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)
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)
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())