-
Notifications
You must be signed in to change notification settings - Fork 480
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Migração de NFe para .net Standard (.netCore + .netFramework) #1013
Merged
Merged
Changes from all commits
Commits
Show all changes
47 commits
Select commit
Hold shift + click to select a range
df79c0f
criado projetos
danilobreda d721594
movido servicos do nfe
danilobreda 2fbba35
movido projeto wsdl, NFe.Utils.Annotations arrumado, colocado em Shar…
danilobreda 095fbff
criado shared project do danfe
danilobreda d403bdb
alteracoes de danfe iniciais
danilobreda b869b13
conversão para utf8
danilobreda 4f51595
Migrado DANFE (NFe e NFe Eventos) em .net Standard, falta NFCe.
danilobreda 7d72c44
arrumado erro de UTF8
danilobreda a4ad4d2
algumas modificacoes no danfe para carregamento de confiuracoes e ini…
danilobreda f87fe95
pasta conversão
danilobreda 426bd13
adicionado retorno em stream do danfe
danilobreda 4701708
Retirado algumas classes do projeto shared onde não funcionam no .net…
danilobreda 00b26a6
feito a primeiro exemplo de conversao do wsdl
danilobreda a37bef1
comentado elementos do ServicoNfeFactory para testes e migração
danilobreda a79a621
Arquivos convertidos para UTF8 BOM
danilobreda c06b985
feito a parte de STATUS de NFE, com alguns estados não implementado
danilobreda fa85a8f
parte inicial autorizacao
danilobreda 13cb646
terminado a parte de autorizacao
danilobreda 91f9ae2
feito nfceCsc
danilobreda 6fd9d40
implementação/migracao do consulta protocolo
danilobreda cf15572
criado classes de distribuicaodfe e download (ainda não implementadas)
danilobreda c840e05
Migrado eventos da nfe
danilobreda ee4f63c
implementado inutilizacao (varias versoes) e recepcao (v2.0)
danilobreda 667df53
implementado e migrado RetAutorizacao
danilobreda 2a0f0bc
arrumado alguns problemas de identação
danilobreda d125d10
Retirado os relatorios dos projetos especificos e colocados em projet…
danilobreda 92eab85
Revert "Retirado os relatorios dos projetos especificos e colocados e…
danilobreda 2d2e7e2
alteracoes para resolver conflitos com alteracoes feitas no retrato a…
danilobreda 2d362c0
Merge branch 'master' into nfecoreport
marcosgerene cb0f4c4
removido arquivos que estavam em pasta errada do nfe.danfe.fast e mud…
danilobreda 3ab7f83
alteracoes no DanfeFrNfe para que funcione corretamente e de erros ma…
danilobreda 4dc4f59
Arrumado arquivos frx ficava gerando sozinho no output, causando prob…
danilobreda 4a3e7e4
Merge branch 'nfecorereport' into nfecoreport
marcosgerene 73f669e
Merge pull request #38 from danilobreda/nfecoreport
marcosgerene 1ba83fa
NFeCore - AppTeste - Adicionado DistribuicaoDFe
marcosgerene 6f56d07
faltando virgula em um enum
danilobreda a3783d7
Merge pull request #1 from marcosgerene/nfecorereport
danilobreda 1a168d4
Merge remote-tracking branch 'origin/nfecoreport' into nfecoreport
danilobreda fd396c7
adicionado novos dados do generatereport para resolução de comflito
danilobreda 16f80c1
Merge branch 'master' into nfecoreport
danilobreda 437cf9c
Alteracao do readme e erros de português
danilobreda 6523552
alteracoes do nferetrato (arrumado conflitos)
danilobreda 9253dd4
atualizado o relatorio retrato
danilobreda 5b2d835
merge feito com master e resolvido conflitos nfecoreport
danilobreda e21c5d8
Merge branch 'master' into nfecoreport
danilobreda 584745d
Atualizado projeto de teste AppTeste.NetCore para .net core 2.2 assim…
danilobreda 5b7fdc7
Voltado traço de summary do CTe.Classes.Informacoes.Tipos
danilobreda File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,34 +1,34 @@ | ||
/********************************************************************************/ | ||
/********************************************************************************/ | ||
/* Projeto: Biblioteca ZeusNFe */ | ||
/* Biblioteca C# para emiss�o de Nota Fiscal Eletr�nica - NFe e Nota Fiscal de */ | ||
/* Consumidor Eletr�nica - NFC-e (http://www.nfe.fazenda.gov.br) */ | ||
/* Biblioteca C# para emissão de Nota Fiscal Eletrônica - NFe e Nota Fiscal de */ | ||
/* Consumidor Eletrônica - NFC-e (http://www.nfe.fazenda.gov.br) */ | ||
/* */ | ||
/* Direitos Autorais Reservados (c) 2014 Adenilton Batista da Silva */ | ||
/* Zeusdev Tecnologia LTDA ME */ | ||
/* */ | ||
/* Voc� pode obter a �ltima vers�o desse arquivo no GitHub */ | ||
/* Você pode obter a última versão desse arquivo no GitHub */ | ||
/* localizado em https://github.com/adeniltonbs/Zeus.Net.NFe.NFCe */ | ||
/* */ | ||
/* */ | ||
/* Esta biblioteca � software livre; voc� pode redistribu�-la e/ou modific�-la */ | ||
/* sob os termos da Licen�a P�blica Geral Menor do GNU conforme publicada pela */ | ||
/* Free Software Foundation; tanto a vers�o 2.1 da Licen�a, ou (a seu crit�rio) */ | ||
/* qualquer vers�o posterior. */ | ||
/* Esta biblioteca é software livre; você pode redistribuí-la e/ou modificá-la */ | ||
/* sob os termos da Licença Pública Geral Menor do GNU conforme publicada pela */ | ||
/* Free Software Foundation; tanto a versão 2.1 da Licença, ou (a seu critério) */ | ||
/* qualquer versão posterior. */ | ||
/* */ | ||
/* Esta biblioteca � distribu�da na expectativa de que seja �til, por�m, SEM */ | ||
/* NENHUMA GARANTIA; nem mesmo a garantia impl�cita de COMERCIABILIDADE OU */ | ||
/* ADEQUA��O A UMA FINALIDADE ESPEC�FICA. Consulte a Licen�a P�blica Geral Menor*/ | ||
/* do GNU para mais detalhes. (Arquivo LICEN�A.TXT ou LICENSE.TXT) */ | ||
/* Esta biblioteca é distribuída na expectativa de que seja útil, porém, SEM */ | ||
/* NENHUMA GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE OU */ | ||
/* ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. Consulte a Licença Pública Geral Menor*/ | ||
/* do GNU para mais detalhes. (Arquivo LICENÇA.TXT ou LICENSE.TXT) */ | ||
/* */ | ||
/* Voc� deve ter recebido uma c�pia da Licen�a P�blica Geral Menor do GNU junto*/ | ||
/* com esta biblioteca; se n�o, escreva para a Free Software Foundation, Inc., */ | ||
/* no endere�o 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. */ | ||
/* Voc� tamb�m pode obter uma copia da licen�a em: */ | ||
/* Você deve ter recebido uma cópia da Licença Pública Geral Menor do GNU junto*/ | ||
/* com esta biblioteca; se não, escreva para a Free Software Foundation, Inc., */ | ||
/* no endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. */ | ||
/* Você também pode obter uma copia da licença em: */ | ||
/* http://www.opensource.org/licenses/lgpl-license.php */ | ||
/* */ | ||
/* Zeusdev Tecnologia LTDA ME - [email protected] */ | ||
/* http://www.zeusautomacao.com.br/ */ | ||
/* Rua Comendador Francisco jos� da Cunha, 111 - Itabaiana - SE - 49500-000 */ | ||
/* Rua Comendador Francisco josé da Cunha, 111 - Itabaiana - SE - 49500-000 */ | ||
/********************************************************************************/ | ||
using System; | ||
using CTe.Classes.Servicos.Tipos; | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,114 @@ | ||
using System; | ||
using System.IO; | ||
using System.Security; | ||
using System.Security.Cryptography.X509Certificates; | ||
|
||
namespace DFe.Utils.Standard | ||
{ | ||
public class CertificadoDigitaoUtil | ||
{ | ||
/// <summary> | ||
/// Retorna o certificado que está no caminho especificado | ||
/// </summary> | ||
/// <param name="caminho">Caminho do certificado (.pfx)</param> | ||
/// <param name="password">string representando a senha do certificado</param> | ||
public static X509Certificate2 ObterDoCaminho(string caminho, string password) | ||
{ | ||
caminho = ArrumaCaminho(caminho); | ||
SecureString stringSegura = null; | ||
try | ||
{ | ||
stringSegura = new SecureString(); | ||
if ((password.Length > 0)) | ||
{ | ||
foreach (Char caractere in password.ToCharArray()) | ||
{ | ||
stringSegura.AppendChar(caractere); | ||
} | ||
} | ||
return ObterDoCaminho(caminho, stringSegura); | ||
} | ||
catch | ||
{ | ||
throw; | ||
} | ||
} | ||
|
||
/// <summary> | ||
/// Retorna o certificado que está no caminho especificado | ||
/// </summary> | ||
/// <param name="caminho">Caminho do certificado (.pfx)</param> | ||
/// <param name="password">SecureString representando a senha do certificado</param> | ||
/// <returns></returns> | ||
public static X509Certificate2 ObterDoCaminho(string caminho, SecureString password) | ||
{ | ||
caminho = ArrumaCaminho(caminho); | ||
if (!caminho.ToLower().EndsWith(".pfx")) | ||
{ | ||
throw new Exception("Caminho do certificado deve terminar com '.pfx'"); | ||
} | ||
|
||
if (!File.Exists(caminho)) | ||
{ | ||
throw new Exception("Certificado não se encontra no caminho especificado"); | ||
} | ||
|
||
var cert = new X509Certificate2(caminho, password, X509KeyStorageFlags.MachineKeySet | X509KeyStorageFlags.PersistKeySet | X509KeyStorageFlags.Exportable); | ||
return cert; | ||
} | ||
|
||
/// <summary> | ||
/// Retorna o certificado que está em bytes | ||
/// </summary> | ||
/// <param name="bytes">array de byte do certificado</param> | ||
/// <param name="password">string representando a senha do certificado</param> | ||
/// <returns></returns> | ||
public static X509Certificate2 ObterDosBytes(byte[] bytes, string password) | ||
{ | ||
SecureString stringSegura = null; | ||
try | ||
{ | ||
stringSegura = new SecureString(); | ||
if ((password.Length > 0)) | ||
{ | ||
foreach (Char caractere in password.ToCharArray()) | ||
{ | ||
stringSegura.AppendChar(caractere); | ||
} | ||
} | ||
|
||
return ObterDosBytes(bytes, stringSegura); | ||
} | ||
catch | ||
{ | ||
throw; | ||
} | ||
} | ||
|
||
/// <summary> | ||
/// Retorna o certificado que está em bytes | ||
/// </summary> | ||
/// <param name="bytes">array de byte do certificado</param> | ||
/// <param name="password">SecureString senha do certificado</param> | ||
/// <returns></returns> | ||
public static X509Certificate2 ObterDosBytes(byte[] bytes, SecureString password) | ||
{ | ||
var cert = new X509Certificate2(bytes, password, X509KeyStorageFlags.MachineKeySet | X509KeyStorageFlags.PersistKeySet | X509KeyStorageFlags.Exportable); | ||
return cert; | ||
} | ||
|
||
/// <summary> | ||
/// Arruma o path caso tenha sido escrito incorretamente | ||
/// </summary> | ||
/// <param name="caminho">Caminho do arquivo + pastas</param> | ||
/// <returns></returns> | ||
private static string ArrumaCaminho(string caminho) | ||
{ | ||
caminho = caminho.Replace(@"/", @"\"); | ||
caminho = caminho.Replace(@"\\", @"\"); | ||
caminho = caminho.Replace("\"", ""); //remove " | ||
caminho = caminho.Replace("\'", ""); //remove ' | ||
return caminho; | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
using DFe.Classes.Flags; | ||
using DFe.Utils; | ||
using NFe.Classes.Informacoes.Emitente; | ||
using NFe.Classes.Informacoes.Identificacao.Tipos; | ||
using NFe.Utils; | ||
using NFe.Utils.Email; | ||
using System.Net; | ||
|
||
namespace NFe.AppTeste.NetCore | ||
{ | ||
public class ConfiguracaoApp | ||
{ | ||
private ConfiguracaoServico _cfgServico; | ||
|
||
public ConfiguracaoApp() | ||
{ | ||
CfgServico = ConfiguracaoServico.Instancia; | ||
CfgServico.tpAmb = TipoAmbiente.Homologacao; | ||
CfgServico.tpEmis = TipoEmissao.teNormal; | ||
CfgServico.ProtocoloDeSeguranca = ServicePointManager.SecurityProtocol; | ||
Emitente = new emit { CPF = "", CRT = CRT.SimplesNacional }; | ||
EnderecoEmitente = new enderEmit(); | ||
ConfiguracaoEmail = new ConfiguracaoEmail("[email protected]", "senha", "Envio de NFE", Properties.Resources.MensagemHtml, "smtp.dominio.com", 587, true, true); | ||
} | ||
|
||
public ConfiguracaoServico CfgServico | ||
{ | ||
get | ||
{ | ||
ConfiguracaoServico.Instancia.CopiarPropriedades(_cfgServico); | ||
return _cfgServico; | ||
} | ||
set | ||
{ | ||
_cfgServico = value; | ||
ConfiguracaoServico.Instancia.CopiarPropriedades(value); | ||
} | ||
} | ||
|
||
public emit Emitente { get; set; } | ||
public enderEmit EnderecoEmitente { get; set; } | ||
public ConfiguracaoEmail ConfiguracaoEmail { get; set; } | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
<Project Sdk="Microsoft.NET.Sdk"> | ||
|
||
<PropertyGroup> | ||
<OutputType>Exe</OutputType> | ||
<TargetFramework>netcoreapp2.2</TargetFramework> | ||
</PropertyGroup> | ||
|
||
<ItemGroup> | ||
<ProjectReference Include="..\DFe.Classes.Standard\DFe.Classes.Standard.csproj" /> | ||
<ProjectReference Include="..\DFe.Utils.Standard\DFe.Utils.Standard.csproj" /> | ||
<ProjectReference Include="..\NFe.Classes.Standard\NFe.Classes.Standard.csproj" /> | ||
<ProjectReference Include="..\NFe.Servicos.Standard\NFe.Servicos.Standard.csproj" /> | ||
<ProjectReference Include="..\NFe.Utils.Standard\NFe.Utils.Standard.csproj" /> | ||
</ItemGroup> | ||
|
||
<ItemGroup> | ||
<Compile Update="Properties\Resources.Designer.cs"> | ||
<DesignTime>True</DesignTime> | ||
<AutoGen>True</AutoGen> | ||
<DependentUpon>Resources.resx</DependentUpon> | ||
</Compile> | ||
</ItemGroup> | ||
|
||
<ItemGroup> | ||
<EmbeddedResource Update="Properties\Resources.resx"> | ||
<Generator>ResXFileCodeGenerator</Generator> | ||
<LastGenOutput>Resources.Designer.cs</LastGenOutput> | ||
</EmbeddedResource> | ||
</ItemGroup> | ||
|
||
</Project> |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
esse arruma caminho , não poderia ser um Path.Combine , não?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Esse caminho vem da digitação do usuário, por isso é necessário esse "arruma". Essa classe utils é utilizada apenas para o console AppTeste.