/// <summary> /// Cria o arquivo de configuração do app. /// </summary> private static void CriarArquivoDeConfiguracoes(NFeFacade nfeFacade) { try { Console.WriteLine("Gerando arquivo de configurações..."); nfeFacade.CriarArquivoDeConfiguracoes(); Console.WriteLine("Arquivo de configurações gerado com sucesso."); } catch (InvalidOperationException ex) { Console.WriteLine(ex.Message); } catch (Exception ex) { Console.WriteLine("Ocorreu um erro não esperado."); Console.WriteLine(string.Format("Detalhes: {0}", ex.Message)); } }
/// <summary> /// Cria o arquivo de configuração do app. /// </summary> private static void CriarArquivoDeConfiguracoes(NFeFacade nfeFacade) { try { Console.WriteLine("Gerando arquivo de configurações..."); nfeFacade.CriarArquivoDeConfiguracoes(); Console.WriteLine("Arquivo de configurações gerado com sucesso."); } catch(InvalidOperationException ex) { Console.WriteLine(ex.Message); } catch(Exception ex) { Console.WriteLine("Ocorreu um erro não esperado."); Console.WriteLine(string.Format("Detalhes: {0}", ex.Message)); } }
public static void Main(string[] args) { //Comandos a serem executados. var listComandos = new List<KeyValuePair<Comando, string>>(); for (var i = 0; i < args.Length; i++) { /* ==================================================================================== Comandos aceitos pelo app: "/enviar" - Enviar NFe "/recibo" - Consultar recibo "/status" - Status serviço "/inutilizar" - Inutilizar numeração "/config" - Mudar configuração ==================================================================================== */ try { switch (args[i]) { case "/?": listComandos.Add(new KeyValuePair<Comando, string>(Comando.Help,string.Empty)); break; case "/enviar": listComandos.Add(new KeyValuePair<Comando, string>(Comando.EnviarNFe, string.Format("{0}#{1}#{2}", args[i + 1], args[i+2], args[i + 3]))); break; case "/recibo": listComandos.Add(new KeyValuePair<Comando, string>(Comando.ConsultarReciboEnvio, args[i + 1])); break; case "/status": listComandos.Add(new KeyValuePair<Comando, string>(Comando.StatusServico, string.Empty)); break; case "/inutilizar": listComandos.Add(new KeyValuePair<Comando, string>(Comando.InutilizarNumeracao, string.Format("{0}#{1}#{2}#{3}#{4}#{5}", args[i + 1], args[i + 2], args[i + 3], args[i + 4], args[i + 5], args[i + 6]))); break; case "/cancelar": listComandos.Add(new KeyValuePair<Comando, string>(Comando.CancelarNFe, string.Format("{0}#{1}#{2}#{3}#{4}#{5}", args[i + 1], args[i + 2], args[i + 3], args[i + 4], args[i + 5], args[i + 6]))); break; case "/config": listComandos.Add(new KeyValuePair<Comando, string>(Comando.Configurar,(args.Length == 1) ? "" : string.Format("{0}#{1}", args[i + 1], args[i + 2]))); break; } } catch { Console.WriteLine("Um ou mais parâmetros não foram informados corretamente."); } } //VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV if (listComandos.Count == 0) return; //Se não tiver nada para fazer, encerra o app. //^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ //--------------------------------------------------------------------------------------------------------------------------------------------- //Execução das tarefas //INÍCIO try { Console.WriteLine("Iniciando serviço de configurações do Zeus..."); NFeFacade nfeFacade = null; try { nfeFacade = new NFeFacade(); } catch(FileNotFoundException) { Console.Write("O arquivo de configurações do Zeus não foi encontrado. Deseja cria-lo?(S/N):"); if(Console.ReadKey().Key == ConsoleKey.S) { nfeFacade = new NFeFacade(true); nfeFacade.CriarArquivoDeConfiguracoes(); Console.WriteLine(""); Console.WriteLine("Lembre-se atribuir os dados necessários ao arquivo que foi criado."); return; // <----- FINALIZA APP } } catch(InvalidOperationException ex) { Console.WriteLine(ex.Message); } catch(Exception ex) { Console.WriteLine("Ocorreu um erro não esperado."); Console.WriteLine(string.Format("Detalhes: {0}", ex.Message)); } //VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV foreach (var tarefa in listComandos) { switch(tarefa.Key) { case Comando.Help: ImprimirHelp(); break; case Comando.EnviarNFe: EnviarNFe(nfeFacade, tarefa.Value); break; case Comando.ConsultarReciboEnvio: ConsultarReciboDeEnvio(nfeFacade, tarefa.Value);break; case Comando.StatusServico: ConsultarStatusServico(nfeFacade); break; case Comando.InutilizarNumeracao: InutilizarNumeracao(nfeFacade, tarefa.Value);break; case Comando.CancelarNFe: CancelarNFe(nfeFacade, tarefa.Value);break; case Comando.CriarArquivoDeConfiguracoes: CriarArquivoDeConfiguracoes(nfeFacade); break; case Comando.Configurar: Configurar(nfeFacade, tarefa.Value); break; } } //^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ } catch (InvalidOperationException ex) { Console.WriteLine(ex.Message); } catch (Exception ex) { Console.WriteLine("Ocorreu um erro não esperado."); Console.WriteLine(string.Format("Detalhes: {0}", ex.Message)); } //FIM //Execução das tarefas //--------------------------------------------------------------------------------------------------------------------------------------------- }
public static void Main(string[] args) { //Comandos a serem executados. var listComandos = new List <KeyValuePair <Comando, string> >(); for (var i = 0; i < args.Length; i++) { /* * ==================================================================================== * Comandos aceitos pelo app: * "/enviar" - Enviar NFe * "/recibo" - Consultar recibo * "/status" - Status serviço * "/inutilizar" - Inutilizar numeração * "/config" - Mudar configuração * ==================================================================================== */ try { switch (args[i]) { case "/?": listComandos.Add(new KeyValuePair <Comando, string>(Comando.Help, string.Empty)); break; case "/enviar": listComandos.Add(new KeyValuePair <Comando, string>(Comando.EnviarNFe, string.Format("{0}#{1}#{2}", args[i + 1], args[i + 2], args[i + 3]))); break; case "/recibo": listComandos.Add(new KeyValuePair <Comando, string>(Comando.ConsultarReciboEnvio, args[i + 1])); break; case "/status": listComandos.Add(new KeyValuePair <Comando, string>(Comando.StatusServico, string.Empty)); break; case "/inutilizar": listComandos.Add(new KeyValuePair <Comando, string>(Comando.InutilizarNumeracao, string.Format("{0}#{1}#{2}#{3}#{4}#{5}", args[i + 1], args[i + 2], args[i + 3], args[i + 4], args[i + 5], args[i + 6]))); break; case "/cancelar": listComandos.Add(new KeyValuePair <Comando, string>(Comando.CancelarNFe, string.Format("{0}#{1}#{2}#{3}#{4}#{5}", args[i + 1], args[i + 2], args[i + 3], args[i + 4], args[i + 5], args[i + 6]))); break; case "/config": listComandos.Add(new KeyValuePair <Comando, string>(Comando.Configurar, (args.Length == 1) ? "" : string.Format("{0}#{1}", args[i + 1], args[i + 2]))); break; } } catch { Console.WriteLine("Um ou mais parâmetros não foram informados corretamente."); } } //VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV if (listComandos.Count == 0) { return; //Se não tiver nada para fazer, encerra o app. } //^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ //--------------------------------------------------------------------------------------------------------------------------------------------- //Execução das tarefas //INÍCIO try { Console.WriteLine("Iniciando serviço de configurações do Zeus..."); NFeFacade nfeFacade = null; try { nfeFacade = new NFeFacade(); } catch (FileNotFoundException) { Console.Write("O arquivo de configurações do Zeus não foi encontrado. Deseja cria-lo?(S/N):"); if (Console.ReadKey().Key == ConsoleKey.S) { nfeFacade = new NFeFacade(true); nfeFacade.CriarArquivoDeConfiguracoes(); Console.WriteLine(""); Console.WriteLine("Lembre-se atribuir os dados necessários ao arquivo que foi criado."); return; // <----- FINALIZA APP } } catch (InvalidOperationException ex) { Console.WriteLine(ex.Message); } catch (Exception ex) { Console.WriteLine("Ocorreu um erro não esperado."); Console.WriteLine(string.Format("Detalhes: {0}", ex.Message)); } //VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV foreach (var tarefa in listComandos) { switch (tarefa.Key) { case Comando.Help: ImprimirHelp(); break; case Comando.EnviarNFe: EnviarNFe(nfeFacade, tarefa.Value); break; case Comando.ConsultarReciboEnvio: ConsultarReciboDeEnvio(nfeFacade, tarefa.Value); break; case Comando.StatusServico: ConsultarStatusServico(nfeFacade); break; case Comando.InutilizarNumeracao: InutilizarNumeracao(nfeFacade, tarefa.Value); break; case Comando.CancelarNFe: CancelarNFe(nfeFacade, tarefa.Value); break; case Comando.CriarArquivoDeConfiguracoes: CriarArquivoDeConfiguracoes(nfeFacade); break; case Comando.Configurar: Configurar(nfeFacade, tarefa.Value); break; } } //^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ } catch (InvalidOperationException ex) { Console.WriteLine(ex.Message); } catch (Exception ex) { Console.WriteLine("Ocorreu um erro não esperado."); Console.WriteLine(string.Format("Detalhes: {0}", ex.Message)); } //FIM //Execução das tarefas //--------------------------------------------------------------------------------------------------------------------------------------------- }