示例#1
0
 def _get_segmento(self, line, lot_sequency, num_lot, nome_segmento):
     segmento = super(Itau240, self)._get_segmento(line, lot_sequency,
                                                   num_lot, nome_segmento)
     vazio, dac = self.get_dac_agencia_e_conta(segmento)
     ignore = not self.is_doc_or_ted(
         line.payment_information_id.payment_type)
     del (segmento['codigo_camara_compensacao'])
     if line.barcode:
         segmento.update({
             'codigo_de_barras':
             int(line.barcode[20:]),
             'codigo_de_barras_dv':
             self.get_dv_digitable_line(
                 self._just_numbers(line.linha_digitavel))
         })
     segmento.update({
         'numero_parcela':
         int(segmento.get('numero_parcela')[:13]),
         'divida_ativa_etiqueta':
         int(segmento.get('divida_ativa_etiqueta')[:13]),
         'identificador_fgts':
         self._string_to_num(segmento.get('identificador_fgts')),
         'tipo_movimento':
         int(segmento.get('tipo_movimento')),
         'favorecido_endereco_rua':
         segmento.get('favorecido_endereco_rua')[:30],
         'favorecido_bairro':
         segmento.get('favorecido_bairro')[:15]
         if segmento.get('favorecido_bairro') else '',
         'favorecido_endereco_complemento':
         str(segmento.get('favorecido_endereco_complemento'))[:15],
         'favorecido_nome':
         segmento.get('favorecido_nome')[:30],
         'numero_documento_cliente':
         str(segmento.get('numero_documento_cliente')),
         'favorecido_conta':
         self._string_to_num(segmento.get('favorecido_conta'), 0),
         'favorecido_agencia':
         self._string_to_num(segmento.get('favorecido_agencia'), 0),
         'valor_real_pagamento':
         self._string_to_monetary(segmento.get('valor_real_pagamento')),
         'favorecido_banco':
         int(line.bank_account_id.bank_id.bic) or int(line.barcode[:3]),
         'finalidade_ted':
         get_ted_doc_finality('itau', segmento.get('finalidade_doc_ted'),
                              '01', ignore),
         'finalidade_doc':
         get_ted_doc_finality('itau', segmento.get('finalidade_doc_ted'),
                              '02', ignore),
         'codigo_receita_tributo':
         int(segmento.get('codigo_receita_tributo') or 0),
         'vazio_dac':
         vazio,
         'dac':
         dac
     })
     return segmento
示例#2
0
 def _get_segmento(self, line, lot_sequency, num_lot, nome_segmento):
     segmento = super(Santander240,
                      self)._get_segmento(line, lot_sequency, num_lot,
                                          nome_segmento)
     ignore = not self.is_doc_or_ted(
         line.payment_information_id.payment_type)
     if ((nome_segmento == "SegmentoW")
             and (not line.payment_information_id.cod_recolhimento_fgts)):
         return None
     segmento.update({
         'numero_parcela':
         int(segmento.get('numero_parcela')[:13]),
         'divida_ativa_etiqueta':
         int(segmento.get('divida_ativa_etiqueta')[:13]),
         'tipo_identificacao_contribuinte':
         2,  # CNPJ
         'tipo_identificacao_contribuinte_alfa':
         '2',  # CNPJ
         'favorecido_conta':
         self._string_to_num(segmento.get('favorecido_conta'), 0),
         'tipo_movimento':
         int(segmento.get('tipo_movimento')),
         'codigo_camara_compensacao':
         self._string_to_num(segmento.get('codigo_camara_compensacao')),
         'codigo_instrucao_movimento':
         self._string_to_num(segmento.get('codigo_instrucao_movimento')),
         'codigo_historico_credito':
         self._string_to_num(segmento.get('codigo_historico_credito')),
         'valor_real_pagamento':
         self._string_to_monetary(segmento.get('valor_real_pagamento')),
         'valor_abatimento':
         self._string_to_monetary(segmento.get('valor_abatimento')),
         'favorecido_agencia':
         self._string_to_num(segmento.get('favorecido_agencia'), 0),
         'favorecido_nome':
         segmento.get('favorecido_nome')[:30],
         'favorecido_endereco_rua':
         segmento.get('favorecido_endereco_rua')[:30],
         'favorecido_bairro':
         segmento.get('favorecido_bairro', '')[:15],
         'favorecido_cidade':
         segmento.get('favorecido_cidade', '')[:15],
         'nome_concessionaria':
         segmento.get('nome_concessionaria', '')[:30],
         'finalidade_ted':
         get_ted_doc_finality('santander',
                              segmento.get('finalidade_doc_ted'), '01',
                              ignore),
         'finalidade_doc':
         get_ted_doc_finality('santander',
                              segmento.get('finalidade_doc_ted'), '02',
                              ignore),
     })
     return segmento
示例#3
0
 def _get_segmento(self, line, lot_sequency, num_lot, nome_segmento):
     segmento = super(Sicoob240,
                      self)._get_segmento(line, lot_sequency, num_lot,
                                          nome_segmento)
     ignore = not self.is_doc_or_ted(
         line.payment_information_id.payment_type)
     if (line.payment_information_id.payment_type == "08"):
         segmento.update({'nome_concessionaria': ''})
     segmento.update({
         'tipo_movimento':
         int(segmento.get('tipo_movimento')),
         'favorecido_nome':
         segmento.get('favorecido_nome')[:30],
         'valor_abatimento':
         self._string_to_monetary(segmento.get('valor_abatimento')),
         'valor_nominal_titulo':
         self._string_to_monetary(segmento.get('valor_nominal_titulo')),
         'favorecido_endereco_rua':
         segmento.get('favorecido_endereco_rua')[:30],
         'favorecido_endereco_complemento':
         str(segmento.get('favorecido_endereco_complemento'))[:15],
         'favorecido_doc_numero':
         self._string_to_num(segmento.get('favorecido_doc_numero')),
         'favorecido_conta_dv':
         self._string_to_num(segmento.get('favorecido_conta_dv'), 0),
         'favorecido_conta':
         self._string_to_num(segmento.get('favorecido_conta'), 0),
         'favorecido_agencia':
         self._string_to_num(segmento.get('favorecido_agencia'), 0),
         'valor_real_pagamento':
         self._string_to_monetary(segmento.get('valor_real_pagamento')),
         'codigo_instrucao_movimento':
         self._string_to_num(segmento.get('codigo_instrucao_movimento')),
         'codigo_camara_compensacao':
         self._string_to_num(segmento.get('codigo_camara_compensacao')),
         'finalidade_ted':
         get_ted_doc_finality('sicoob', segmento.get('finalidade_doc_ted'),
                              '01', ignore),
         'finalidade_doc':
         get_ted_doc_finality('sicoob', segmento.get('finalidade_doc_ted'),
                              '02', ignore),
         'nome_concessionaria':
         ('' if line.payment_information_id.payment_type == '10' else
          segmento.get('nome_concessionaria'))
     })
     return segmento
示例#4
0
 def _get_segmento(self, line, lot_sequency, num_lot, nome_segmento):
     segmento = super(Bradesco240,
                      self)._get_segmento(line, lot_sequency, num_lot,
                                          nome_segmento)
     ignore = not self.is_doc_or_ted(
         line.payment_information_id.payment_type)
     if ((nome_segmento == "SegmentoW")
             and (not line.payment_information_id.cod_recolhimento_fgts)):
         return None
     segmento.update({
         'numero_parcela':
         int(segmento.get('numero_parcela')[:13]),
         'divida_ativa_etiqueta':
         int(segmento.get('divida_ativa_etiqueta')[:13]),
         'tipo_movimento':
         int(segmento.get('tipo_movimento')),
         'codigo_camara_compensacao':
         self._string_to_num(segmento.get('codigo_camara_compensacao')),
         'codigo_instrucao_movimento':
         self._string_to_num(segmento.get('codigo_instrucao_movimento')),
         'favorecido_conta':
         self._string_to_num(segmento.get('favorecido_conta'), 0),
         'favorecido_conta_dv':
         self._string_to_num(segmento.get('favorecido_conta_dv'), 0),
         'favorecido_agencia':
         self._string_to_num(segmento.get('favorecido_agencia'), 0),
         'favorecido_cep':
         self._string_to_num(str(segmento.get('favorecido_cep'))[:5]),
         'finalidade_ted':
         get_ted_doc_finality('bradesco',
                              segmento.get('finalidade_doc_ted'), '01',
                              ignore),
         'finalidade_doc':
         get_ted_doc_finality('bradesco',
                              segmento.get('finalidade_doc_ted'), '02',
                              ignore),
     })
     return segmento