Exemplo n.º 1
0
    def rodape(self):

        infCFe = self.root.find('./infCFe')  # (!) infCFe do cancelamento
        sat_numero_serie = 'SAT no. {}'.format(
            infCFe.findtext('ide/nserieSAT'))

        datahora = datetime.strptime(
            '{}{}'.format(infCFe.findtext('ide/dEmi'),
                          infCFe.findtext('ide/hEmi')), '%Y%m%d%H%M%S')

        datahora_emissao = datahora.strftime('%d/%m/%Y - %H:%M:%S')
        if six.PY2:
            # Python 2: strftime() resulta em str, que precisará ser passado
            # como um objeto unicode para unidecode (em self.texto())
            datahora_emissao = datahora_emissao.decode('utf-8')

        chave = ersat.ChaveCFeSAT(infCFe.attrib['Id'])

        self.normal()
        self.avanco(2)
        self.separador()
        self.centro()
        self.negrito()
        self.quebrar(u'DADOS DO CUPOM FISCAL ELETRÔNICO DE CANCELAMENTO')
        self.avanco()
        self.texto(sat_numero_serie)
        self.negrito()
        self.texto(datahora_emissao)

        self.avanco()
        self.esquerda()
        self.condensado()
        self.texto(' '.join(chave.partes()))
        self.condensado()

        self.avanco()
        self.centro()

        self.chave_cfe_code128(chave)

        self.avanco(2)
        self.impressora.qrcode(
            ersat.dados_qrcode(self._tree),
            qrcode_module_size=self._config.qrcode.tamanho_modulo,
            qrcode_ecc_level=self._config.qrcode.nivel_correcao)

        self.avanco()
        self.qrcode_mensagem()
Exemplo n.º 2
0
    def rodape(self):

        infCFe = self.root.find('./infCFe')
        sat_numero_serie = 'SAT no. {}'.format(
            infCFe.findtext('ide/nserieSAT'))

        datahora = datetime.strptime(
            '{}{}'.format(infCFe.findtext('ide/dEmi'),
                          infCFe.findtext('ide/hEmi')), '%Y%m%d%H%M%S')

        datahora_emissao = datahora.strftime('%d/%m/%Y - %H:%M:%S')

        chave = ersat.ChaveCFeSAT(infCFe.attrib['Id'])

        self.normal()
        self.separador()
        self.centro()
        self.negrito()
        self.texto(sat_numero_serie)
        self.negrito()
        self.texto(datahora_emissao)

        self.avanco()
        self.esquerda()
        self.condensado()
        self.texto(' '.join(chave.partes()))
        self.condensado()

        self.avanco()
        self.centro()

        self.chave_cfe_code128(chave)

        self.avanco(2)
        self.impressora.qrcode(ersat.dados_qrcode(self._tree),
                               qrcode_module_size=conf.qrcode.tamanho_modulo,
                               qrcode_ecc_level=conf.qrcode.nivel_correcao)

        if self.site_sefaz:
            self.condensado()
            self.texto(self.site_sefaz)