def _monta_nfe_identificacao(self, ide): empresa = self.empresa_id participante = self.participante_id ide.tpAmb.valor = int(self.ambiente_nfe) ide.tpNF.valor = int(self.entrada_saida) ide.cUF.valor = UF_CODIGO[empresa.estado] ide.natOp.valor = self.natureza_operacao_id.nome ide.indPag.valor = int(self.ind_forma_pagamento) ide.serie.valor = self.serie ide.nNF.valor = str(D(self.numero).quantize(D('1'))) # # Tratamento das datas de UTC para o horário de brasília # ide.dhEmi.valor = data_hora_horario_brasilia( parse_datetime(self.data_hora_emissao + ' GMT') ) ide.dEmi.valor = ide.dhEmi.valor if self.data_hora_entrada_saida: ide.dhSaiEnt.valor = data_hora_horario_brasilia( parse_datetime(self.data_hora_entrada_saida + ' GMT') ) else: nfe.infNFe.ide.dhSaiEnt.valor = data_hora_horario_brasilia( parse_datetime(self.data_hora_emissao + ' GMT') ) ide.dSaiEnt.valor = ide.dhSaiEnt.valor ide.hSaiEnt.valor = ide.dhSaiEnt.valor ide.cMunFG.valor = empresa.municipio_id.codigo_ibge[:7] # ide.tpImp.valor = 1 # DANFE em retrato ide.tpEmis.valor = self.tipo_emissao_nfe ide.finNFe.valor = self.finalidade_nfe ide.procEmi.valor = 0 # Emissão por aplicativo próprio ide.verProc.valor = 'Odoo 10.0' ide.indPres.valor = self.presenca_comprador # # NFC-e é sempre emissão para dentro do estado # e sempre para consumidor final # if self.modelo == MODELO_FISCAL_NFCE: ide.idDest.valor = IDENTIFICACAO_DESTINO_INTERNO ide.indFinal.valor = TIPO_CONSUMIDOR_FINAL_CONSUMIDOR_FINAL else: if participante.estado == 'EX': ide.idDest.valor = IDENTIFICACAO_DESTINO_EXTERIOR elif participante.estado == empresa.estado: ide.idDest.valor = IDENTIFICACAO_DESTINO_INTERNO else: ide.idDest.valor = IDENTIFICACAO_DESTINO_INTERESTADUAL if (self.consumidor_final) or ( participante.contribuinte == INDICADOR_IE_DESTINATARIO_NAO_CONTRIBUINTE): ide.indFinal.valor = TIPO_CONSUMIDOR_FINAL_CONSUMIDOR_FINAL
def _data_hora_separadas(self): data_hora_emissao = data_hora_horario_brasilia( parse_datetime(self.data_hora_emissao)) self.data_emissao = str(data_hora_emissao)[:10] self.hora_emissao = str(data_hora_emissao)[11:19] data_hora_entrada_saida = data_hora_horario_brasilia( parse_datetime(self.data_hora_entrada_saida)) self.data_entrada_saida = str(data_hora_entrada_saida)[:10] self.hora_entrada_saida = str(data_hora_entrada_saida)[11:19]
def _compute_data_hora_separadas(self): for documento in self: data_hora_emissao = data_hora_horario_brasilia( parse_datetime(documento.data_hora_emissao)) documento.data_emissao = str(data_hora_emissao)[:10] documento.hora_emissao = str(data_hora_emissao)[11:19] data_hora_entrada_saida = data_hora_horario_brasilia( parse_datetime(documento.data_hora_entrada_saida)) documento.data_entrada_saida = str(data_hora_entrada_saida)[:10] documento.hora_entrada_saida = str(data_hora_entrada_saida)[11:19]
def _compute_data_hora_separadas(self): super(SpedDocumento, self)._compute_data_hora_separadas() for documento in self: if documento.data_hora_autorizacao: data_hora_autorizacao = data_hora_horario_brasilia( parse_datetime(documento.data_hora_autorizacao)) documento.data_autorizacao = str(data_hora_autorizacao)[:10] if documento.data_hora_cancelamento: data_hora_cancelamento = data_hora_horario_brasilia( parse_datetime(documento.data_hora_cancelamento)) documento.data_cancelamento = str(data_hora_cancelamento)[:10]
def setar_datas_core(self): for holiday in self: if holiday.data_inicio and holiday.data_fim: data_inicio = data_hora_horario_brasilia( parse_datetime(holiday.data_inicio + ' 00:00:00')) holiday.date_from = str(UTC.normalize(data_inicio))[:19] data_fim = data_hora_horario_brasilia( parse_datetime(holiday.data_fim + ' 23:59:59')) holiday.date_to = str(UTC.normalize(data_fim))[:19] elif holiday.date_from and holiday.date_to: holiday.data_inicio = fields.Date.from_string( holiday.date_from) holiday.data_fim = fields.Date.from_string(holiday.date_to)
def _compute_data_hora_separadas(self): for carta_correcao in self: if carta_correcao.data_hora_autorizacao: data_hora_autorizacao = data_hora_horario_brasilia( parse_datetime(carta_correcao.data_hora_autorizacao)) carta_correcao.data_autorizacao = \ str(data_hora_autorizacao)[:10]