//TODO:Desenvolver sistema para salvar relaorio em uma pasta TEMP no diretório do software

        /// <summary>
        /// Carrega as informações do email enviado quando é finalizada uma Ordem de Serviço
        /// </summary>
        /// <returns></returns>
        public static string CarregarEmailFinalizacaoOS()
        {
            StreamReader sr = null;
            string       Saida;
            string       CaminhoDoArquivo = String.Format("{0}/Menssagem.dat", Ferramentas.ObterCaminhoDoExecutavel());

            try
            {
                sr = new StreamReader(CaminhoDoArquivo);

                Saida = sr.ReadToEnd();
            }
            catch (System.Exception exc)
            {
                Saida = "Ocorreu um arro ao tentar ler o arquivo com as informações.";
                ControllerArquivoLog.GeraraLog(exc);
            }
            finally
            {
                if (sr != null)
                {
                    sr.Close();
                }
            }

            return(Saida);
        }
예제 #2
0
        /// <summary>
        /// Salvando informações da empresa
        /// </summary>
        /// <param name="_Nome"></param>
        /// <param name="_Contato"></param>
        /// <param name="_Endereco"></param>
        /// <returns></returns>
        public static string Save(String Nome, String Contato, String Endereco)
        {
            string       Saida            = " ";
            StreamWriter sw               = null;
            string       CaminhoDoArquivo = String.Format("{0}/Empresa.CFG", Ferramentas.ObterCaminhoDoExecutavel());


            try
            {
                sw = new StreamWriter(CaminhoDoArquivo);

                sw.WriteLine(Nome);
                sw.WriteLine(Contato);
                sw.WriteLine(Endereco);

                Saida = "Operação efetuada com sucesso!";
            }
            catch (Exception exc)
            {
                Saida = "Ocorreu um erro ao tentar salvar o arquivo de configuração.";

                ControllerArquivoLog.GeraraLog(exc);
            }
            finally
            {
                if (sw != null)
                {
                    sw.Close();
                }
            }

            return(Saida);
        }
        /// <summary>
        /// Criando arquivo com as informações de Login e Servidor que são utilizados para enviar o e-mail para os clientes.
        /// </summary>
        /// <param name="EnderecoEmail"></param>
        /// <param name="Senha"></param>
        /// <param name="Host"></param>
        /// <param name="Port"></param>
        /// <returns></returns>
        public static string SalvarInformacoesLoginServidor(string EnderecoEmail, string Senha, string Host, int Port)
        {
            Cryptor      cr;
            string       Saida            = "";
            string       CaminhoDoArquivo = String.Format("{0}/Email.dat", Ferramentas.ObterCaminhoDoExecutavel());
            StreamWriter sw = null;

            cr = new Cryptor("p@$$w0rd");

            try
            {
                sw = new StreamWriter(CaminhoDoArquivo);

                sw.WriteLine(cr.Encrypt(EnderecoEmail));
                sw.WriteLine(cr.Encrypt(Senha));
                sw.WriteLine(cr.Encrypt(Host));
                sw.WriteLine(cr.Encrypt(Port.ToString()));

                Saida = "Arquivo de configuração gerado com sucesso!";
            }
            catch (System.Exception exc)
            {
                ControllerArquivoLog.GeraraLog(exc);

                Saida = "Ocorreu um erro ao tentar configurar! um arquivo de Log foi criado no diretorio do seu software com mais informações";
            }
            finally
            {
                if (sw != null)
                {
                    sw.Close();
                }
            }
            return(Saida);
        }
        /// <summary>
        /// Salvando E-mail base(padrão) que é enviado para todos os clientes quando o serviço termina.
        /// </summary>
        /// <param name="Texto"></param>
        /// <returns></returns>
        public static string SalvarEmailFinalizacaoOS(string Texto)
        {
            string       saida            = " ";
            string       CaminhoDoArquivo = String.Format("{0}/Menssagem.dat", Ferramentas.ObterCaminhoDoExecutavel());
            StreamWriter sw = null;

            try
            {
                sw = new StreamWriter(CaminhoDoArquivo);

                sw.WriteLine(Texto);

                saida = "Arquivo de Email Base gerado com sucesso!";
            }
            catch (System.Exception exc)
            {
                ControllerArquivoLog.GeraraLog(exc);
                saida = "Ocorreu um erro ao tentar criar o Email Base! um arquivo de Log foi criado no diretorio do seu software com mais informações";
            }
            finally
            {
                if (sw != null)
                {
                    sw.Close();
                }
            }


            return(saida);
        }
        public static string RecuperarUltimoLogin()
        {
            StreamReader sr             = null;
            string       saida          = "";
            string       LocalDoArquivo = String.Format("{0}/UltimoLogin.dat", ObterCaminhoDoExecutavel());


            try
            {
                if (File.Exists(LocalDoArquivo))
                {
                    sr = new StreamReader(LocalDoArquivo);

                    saida = sr.ReadLine();
                }
            }
            catch (Exception ex)
            {
                ControllerArquivoLog.GeraraLog(ex);
            }
            finally
            {
                if (sr != null)
                {
                    sr.Close();
                }
            }

            return(saida);
        }
예제 #6
0
        /// <summary>
        /// Carregando lista com nome de todos clientes
        /// </summary>
        /// <returns>The lista.</returns>
        public static DataTable CarregarListaDeNomes()
        {
            char nivelAcesso = '0';            //0(Flase)

            Spartacus.Database.Generic database;
            DataTable tabela = new DataTable("Pessoas");

            Spartacus.Database.Command cmd = new Spartacus.Database.Command();

            cmd.v_text = "select Nome from pessoa where status <> #status#";

            cmd.AddParameter("status", Spartacus.Database.Type.BOOLEAN);
            cmd.SetValue("status", nivelAcesso.ToString());

            try
            {
                database = new Spartacus.Database.Sqlite(DB.GetStrConection());

                tabela = database.Query(cmd.GetUpdatedText(), "Pessoas");
            }
            catch (Exception ex)
            {
                ControllerArquivoLog.GeraraLog(ex);
            }

            return(tabela);
        }
        /// <summary>
        /// Reverte o status da Ordemd e serviço quando o serviço é excluido, o Status volta para Manutenção,
        /// pois não pdoe háver uma Ordem de serviço finalizada sem um serviço criado.
        /// </summary>
        /// <param name="IDOrdemDeServico">Identifier ordem de servico.</param>
        private static void ReverterStatusDaOrdemDeServico(int IDOrdemDeServico)
        {
            Spartacus.Database.Generic database;
            Spartacus.Database.Command cmd = new Spartacus.Database.Command();

            cmd.v_text = "update OrdemDeServico set Situacao = #situacao# where ID = #id#";

            cmd.AddParameter("situacao", Spartacus.Database.Type.STRING);
            cmd.AddParameter("id", Spartacus.Database.Type.INTEGER);

            cmd.SetValue("situacao", "Manutenção", false); // valor com acento será mantido por causa do false
            cmd.SetValue("id", IDOrdemDeServico.ToString());

            try
            {
                database = new Spartacus.Database.Sqlite(DB.GetStrConection());

                // desabilitando seguranca de execucao de comandos
                database.SetExecuteSecurity(false);

                database.Execute(cmd.GetUpdatedText());
            }
            catch (Spartacus.Database.Exception ex)
            {
                ControllerArquivoLog.GeraraLog(ex);
            }
        }
예제 #8
0
        /// <summary>
        /// Excluindo cliente
        /// </summary>
        /// <param name="Nome"></param>
        /// <returns>Resultado da operação</returns>
        public static string Deletar(string Nome)
        {
            char   nivelAcesso = '0';
            string saida       = string.Format("cliente {0} foi excluido com sucesso!", Nome);

            Spartacus.Database.Generic database;
            Spartacus.Database.Command cmd = new Spartacus.Database.Command();

            cmd.v_text = "update pessoa set Status = #status# Where Nome = #nome#";

            cmd.AddParameter("nome", Spartacus.Database.Type.STRING);
            cmd.AddParameter("status", Spartacus.Database.Type.INTEGER);

            cmd.SetValue("nome", Nome);
            cmd.SetValue("status", nivelAcesso.ToString());            //Recebe o valor 0(false), para desativar usuário

            try
            {
                database = new Spartacus.Database.Sqlite(DB.GetStrConection());

                database.Execute(cmd.GetUpdatedText());
            }
            catch (Exception exc)
            {
                ControllerArquivoLog.GeraraLog(exc);
                saida = string.Format("Ocorreu um erro ao excluir ao excluir o cliente {0}", exc.Message);
            }

            return(saida);
        }
예제 #9
0
        /// <summary>
        /// Excluindo usuario
        /// </summary>
        /// <param name="Nome"></param>
        /// <returns>Resultado da operação</returns>
        public static string Deletar(string login)
        {
            string saida = String.Format("O técnico foi excluido com sucesso!");

            Spartacus.Database.Generic dataBase;
            Spartacus.Database.Command cmd = new Spartacus.Database.Command();


            cmd.v_text = "update Tecnicos set Status = #status# Where Login = #login#";

            cmd.AddParameter("login", Spartacus.Database.Type.STRING);
            cmd.AddParameter("status", Spartacus.Database.Type.BOOLEAN);

            cmd.SetValue("status", Convert.ToString('0'));
            cmd.SetValue("login", login.ToLower());

            try
            {
                dataBase = new Spartacus.Database.Sqlite(DB.GetStrConection());

                dataBase.Execute(cmd.GetUpdatedText());
            }
            catch (Spartacus.Database.Exception exc)
            {
                ControllerArquivoLog.GeraraLog(exc);

                saida = string.Format("Ocorreu um erro ao excluir o técnico:", exc.Message);
            }

            return(saida);
        }
예제 #10
0
        /// <summary>
        /// Verificando se o login já esta sendo utilizado
        /// </summary>
        /// <param name="login"></param>
        /// <returns></returns>
        public static bool VerificarExistenciaUsuario(string login)
        {
            Spartacus.Database.Generic database;
            Spartacus.Database.Command cmd = new Spartacus.Database.Command();
            DataTable tabela = new DataTable("Tabela");

            cmd.v_text = "select Login from Tecnicos where login = #login#";

            cmd.AddParameter("login", Spartacus.Database.Type.STRING);

            cmd.SetValue("login", login.ToLower());

            try
            {
                database = new Spartacus.Database.Sqlite(DB.GetStrConection());

                tabela = database.Query(cmd.GetUpdatedText(), "Tecnicos");

                if (tabela.Rows.Count == 1)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch (Spartacus.Database.Exception exc)
            {
                ControllerArquivoLog.GeraraLog(exc);

                return(true);
            }
        }
        /// <summary>
        /// Finalizando ordem de serviço(Mudando o Status da OS), e criando um novo serviço.
        /// </summary>
        /// <returns>The O.</returns>
        public static string FinalizarOS(Servico InformacoesDoServico)
        {
            Spartacus.Database.Generic database;
            Spartacus.Database.Command cmd = new Spartacus.Database.Command();

            cmd.v_text = "update OrdemDeServico set Situacao = #situacao# where ID = #id#";

            cmd.AddParameter("situacao", Spartacus.Database.Type.STRING);
            cmd.AddParameter("id", Spartacus.Database.Type.INTEGER);

            cmd.SetValue("situacao", "Finalizado");
            cmd.SetValue("id", InformacoesDoServico.IdOrdemDeServico.ToString());

            try
            {
                database = new Spartacus.Database.Sqlite(DB.GetStrConection());

                database.Execute(cmd.GetUpdatedText());

                ControllerServico.Criar(InformacoesDoServico);                //Gerar um trabalho, após ter alterado as informações da OS.

                return("A Ordem de serviço foi finalizda com sucesso.");
            }
            catch (Spartacus.Database.Exception ex)
            {
                ControllerArquivoLog.GeraraLog(ex);

                return(String.Format("Ocorreu um erro ao tentar finalizar a OS: {0}", ex.Message));
            }
        }
        /// <summary>
        /// Carrega as informações do arquivo de configuração do E-mail.
        /// </summary>
        /// <returns></returns>
        public static Email CarregarInformacoesLoginServidor()
        {
            Cryptor      cr;
            string       CaminhoDoArquivo = String.Format("{0}/Email.dat", Ferramentas.ObterCaminhoDoExecutavel());
            Email        EmailBase        = new Email();
            StreamReader sr = null;

            cr = new Cryptor("p@$$w0rd");

            try
            {
                sr = new StreamReader(CaminhoDoArquivo);

                EmailBase.email = cr.Decrypt(sr.ReadLine());
                EmailBase.Senha = cr.Decrypt(sr.ReadLine());
                EmailBase.Host  = cr.Decrypt(sr.ReadLine());
                EmailBase.Port  = int.Parse(cr.Decrypt(sr.ReadLine()));
            }
            catch (System.Exception exc)
            {
                ControllerArquivoLog.GeraraLog(exc);
            }
            finally
            {
                if (sr != null)
                {
                    sr.Close();
                }
            }
            return(EmailBase);
        }
        /// <summary>
        /// Salvando um novo serviço, Seriço que é gerado apartir da finalização de uma Ordem de serviço
        /// </summary>
        /// <param name="ServicoBase">Servico Base.</param>
        public static string Criar(Servico ServicoBase)
        {
            Spartacus.Database.Generic database;
            Spartacus.Database.Command cmd = new Spartacus.Database.Command();

            cmd.v_text = "Insert into Trabalhos(OrdemDeServico,Valor,Descricao) values (#idordemdeservico#,#valor#,#descricao#)";
            cmd.AddParameter("idordemdeservico", Spartacus.Database.Type.INTEGER);
            cmd.AddParameter("valor", Spartacus.Database.Type.REAL);
            cmd.AddParameter("descricao", Spartacus.Database.Type.STRING);
            cmd.SetLocale("valor", Spartacus.Database.Locale.EUROPEAN);


            cmd.SetValue("idordemdeservico", ServicoBase.IdOrdemDeServico.ToString());
            cmd.SetValue("valor", ServicoBase.Valor.ToString());
            cmd.SetValue("descricao", ServicoBase.Descricao);

            try
            {
                database = new Spartacus.Database.Sqlite(DB.GetStrConection());

                database.Execute(cmd.GetUpdatedText());

                return("Serviço foi salvo com sucesso");
            }
            catch (Spartacus.Database.Exception ex)
            {
                ControllerArquivoLog.GeraraLog(ex);

                return(String.Format("Ocorreu um erro ao tentar salvar o serviço{0}", ex.Message));
            }
        }
예제 #14
0
        /// <summary>
        /// Retorna um DataTable com todas as informações de todos clientes
        /// </summary>
        /// <returns>The lista.</returns>
        public static DataTable CarregarLista()
        {
            Spartacus.Database.Generic database;
            DataTable tabela = new DataTable("Pessoas");

            Spartacus.Database.Command cmd = new Spartacus.Database.Command();

            cmd.v_text = @"select  Id, Nome, Tipo, Email, SiglaEstado, Endereco, Cidade,Bairro
                          from pessoa where status <> #status#";

            cmd.AddParameter("status", Spartacus.Database.Type.BOOLEAN);
            cmd.SetValue("status", "0");            //0(Flase)

            try
            {
                database = new Spartacus.Database.Sqlite(DB.GetStrConection());

                tabela = database.Query(cmd.GetUpdatedText(), "Pessoas");
            }
            catch (Exception ex)
            {
                ControllerArquivoLog.GeraraLog(ex);
            }

            return(tabela);
        }
        /// <summary>
        /// Deletando serviço gerado
        /// </summary>
        /// <param name="NumeroOs">Numero os.</param>
        public static string Deletar(int NumeroOs)
        {
            Spartacus.Database.Generic database;
            Spartacus.Database.Command cmd = new Spartacus.Database.Command();

            cmd.v_text = "delete from Trabalhos where OrdemDeServico = #idordemdeservico#";
            cmd.AddParameter("idordemdeservico", Spartacus.Database.Type.INTEGER);
            cmd.SetValue("idordemdeservico", NumeroOs.ToString());

            try
            {
                ReverterStatusDaOrdemDeServico(NumeroOs);

                database = new Spartacus.Database.Sqlite(DB.GetStrConection());

                database.Execute(cmd.GetUpdatedText());

                return("Serviço deletado com sucesso!");
            }
            catch (Spartacus.Database.Exception ex)
            {
                ControllerArquivoLog.GeraraLog(ex);

                return(String.Format("Ocorreu um erro:{0}", ex.Message));
            }
        }
        /// <summary>
        /// Preenchendo a classe OS com as informações do DataTable
        /// </summary>
        /// <param name="tabela">todo: describe tabela parameter on PreencherOS</param>
        /// <returns>The cliente.</returns>
        private static OrdemServico PreencherOS(DataTable tabela)
        {
            List <string> OSBaseLista = new List <string>();
            OrdemServico  OSBase      = new OrdemServico();


            try
            {
                foreach (DataRow r in tabela.Rows)
                {
                    foreach (DataColumn c in tabela.Columns)
                    {
                        OSBaseLista.Add(r[c].ToString());
                    }
                }

                OSBase.ID                 = Convert.ToInt32(OSBaseLista[0]);
                OSBase.Situacao           = OSBaseLista[1];
                OSBase.Defeito            = OSBaseLista[2];
                OSBase.Descricao          = OSBaseLista[3];
                OSBase.Observacao         = OSBaseLista[4];
                OSBase.NumeroSerie        = OSBaseLista[5];
                OSBase.Equipamento        = OSBaseLista[6];
                OSBase.dataEntradaServico = OSBaseLista[7];
                OSBase.IDCliente          = Convert.ToInt32(OSBaseLista[8]);
                OSBase.IDTecnico          = Convert.ToInt32(OSBaseLista[9]);
            }
            catch (Exception ex)
            {
                ControllerArquivoLog.GeraraLog(ex);
            }
            return(OSBase);
        }
예제 #17
0
        /// <summary>
        /// Pegando informações da empresa no arquivo de configuração da mesma.
        /// </summary>
        /// <returns>Informações da empresa</returns>
        public static Empresa Load()
        {
            StreamReader sr               = null;
            Empresa      EmpresaBase      = new Empresa();
            string       CaminhoDoArquivo = String.Format("{0}/Empresa.CFG", Ferramentas.ObterCaminhoDoExecutavel());

            try
            {
                sr = new StreamReader(CaminhoDoArquivo);

                EmpresaBase.Nome     = sr.ReadLine();
                EmpresaBase.Contato  = sr.ReadLine();
                EmpresaBase.Endereco = sr.ReadLine();
            }
            catch (Exception Exc)
            {
                ControllerArquivoLog.GeraraLog(Exc);
            }
            finally
            {
                if (sr != null)
                {
                    sr.Close();
                }
            }

            return(EmpresaBase);
        }
        /// <summary>
        /// Retorna um DataTable com todas as Ordens de serviço, utilizando um filtro de pesquisa.
        /// </summary>
        /// <returns>The lista.</returns>
        public static DataTable CarregarListaComFiltroDePesquisa(string filtroSQL, int IDCliente)
        {
            DataTable tabela = new DataTable("ordemdeservico");

            Spartacus.Database.Generic database;
            Spartacus.Database.Command cmd = new Spartacus.Database.Command();

            cmd.v_text = String.Format(@"select ID, Equipamento, NumeroDESerie, Defeito, DataEntradaServico
                                         from ordemdeservico where idcliente {0} #idcliente#", filtroSQL);



            cmd.AddParameter("idcliente", Spartacus.Database.Type.STRING);
            cmd.SetValue("idcliente", IDCliente.ToString());

            try
            {
                database = new Spartacus.Database.Sqlite(DB.GetStrConection());

                tabela = database.Query(cmd.GetUpdatedText(), "Ordemdeservico");
            }
            catch (Exception ex)
            {
                ControllerArquivoLog.GeraraLog(ex);
            }
            return(tabela);
        }
        /// <summary>
        /// Carregando as informações da tabela para a classe de OS.
        /// </summary>
        /// <param name="ID">I.</param>
        public static OrdemServico Carregar(int ID)
        {
            System.Data.DataTable tabela = new DataTable("OrdemDeServico");
            OrdemServico          OSBase = new OrdemServico();

            Spartacus.Database.Generic database;
            Spartacus.Database.Command cmd = new Spartacus.Database.Command();

            cmd.v_text = "Select * from OrdemDeServico Where ID = #id#";

            cmd.AddParameter("id", Spartacus.Database.Type.INTEGER);
            cmd.SetValue("id", ID.ToString());

            try
            {
                database = new Spartacus.Database.Sqlite(DB.GetStrConection());

                tabela = database.Query(cmd.GetUpdatedText(), "OrdemDeServico");

                OSBase = PreencherOS(tabela);
            }
            catch (Spartacus.Database.Exception ex)
            {
                ControllerArquivoLog.GeraraLog(ex);
            }


            return(OSBase);
        }
예제 #20
0
        /// <summary>
        /// Carregando informações do cliente.
        /// </summary>
        public static Pessoa Carregar(int id)
        {
            Spartacus.Database.Generic database;
            DataTable tabela = new DataTable("pessoas");

            Spartacus.Database.Command cmd = new Spartacus.Database.Command();

            cmd.v_text = "Select * from pessoa where ID = #id#";

            cmd.AddParameter("id", Spartacus.Database.Type.INTEGER);
            cmd.SetValue("id", id.ToString());


            try
            {
                database = new Spartacus.Database.Sqlite(DB.GetStrConection());

                tabela = database.Query(cmd.GetUpdatedText(), "pessoas");
            }
            catch (Exception ex)
            {
                ControllerArquivoLog.GeraraLog(ex);
            }

            return(PreencherCliente(tabela));
        }
        /// <summary>
        ///  Configurando e enviando e-mail. (Decodificando)
        /// </summary>
        /// <param name="NomeUsuario"></param>
        public static string EnviarInformacoesOSFinalizada(string NomeCliente, string EmailCliente, string NomeEmpresa, string EmailFInalizacaoOS)
        {
            string Saida = " ";

            Email EmailBase = new Email();

            EmailBase = ControllerEmail.CarregarInformacoesLoginServidor();    //Carregando informações do servidor.

            SmtpClient  smtp = new SmtpClient(EmailBase.Host, EmailBase.Port); //Servidor
            MailMessage mail = new MailMessage();                              //Menssagem

            mail.From = new MailAddress(EmailBase.email);


            //Configurando servidor.
            smtp.EnableSsl             = true;
            smtp.UseDefaultCredentials = false;
            smtp.Credentials           = new System.Net.NetworkCredential(EmailBase.email, EmailBase.Senha);//Passando Login e senha do e-mail da empresa(para enviar)


            //Assunto do email.
            mail.Subject = String.Format("Serviço pronto [ {0} ]", NomeEmpresa);

            //Informando sobre o corpo.
            mail.IsBodyHtml = true;

            //Conteúdo do email.
            mail.Body = EmailFInalizacaoOS;

            //Adicionando E-mail do cliente para enviar.
            mail.To.Add(EmailCliente);

            //Prioridade de Envio.
            mail.Priority = System.Net.Mail.MailPriority.High;

            try
            {
                //Envia o email.
                smtp.Send(mail);

                Saida = "E-mail enviado com sucesso!";
            }
            catch (System.Exception exc)
            {
                //Gerando arquivo de Log
                ControllerArquivoLog.GeraraLog(exc);

                Saida = "Ocorreu um erro ao enviar o Email " + exc.Message;
            }

            return(Saida);
        }
        /// <summary>
        /// Salvando Ordem De Serviço
        /// </summary>
        /// <param name="Os">Os.</param>
        public static string Criar(OrdemServico Os)
        {
            Spartacus.Database.Generic database;
            Spartacus.Database.Command cmd = new Spartacus.Database.Command();

            cmd.v_text = @"insert into OrdemDeServico 
                           (Situacao,Defeito,Descricao,Observacao,NumeroDeSerie,Equipamento,DataEntradaServico,IdCliente,IdTecnico,ValorOrcamento)
                           values(#situacao#,#defeito#,#descricao#,#observacao#,#numerodeserie#,#equipamento#,#dataentradaservico#,#idcliente#,#idtecnico#,#valor#)";

            cmd.AddParameter("situacao", Spartacus.Database.Type.STRING);
            cmd.AddParameter("defeito", Spartacus.Database.Type.STRING);
            cmd.AddParameter("descricao", Spartacus.Database.Type.STRING);
            cmd.AddParameter("observacao", Spartacus.Database.Type.STRING);
            cmd.AddParameter("numeroDeSerie", Spartacus.Database.Type.STRING);
            cmd.AddParameter("equipamento", Spartacus.Database.Type.STRING);
            cmd.AddParameter("dataEntradaServico", Spartacus.Database.Type.STRING);
            cmd.AddParameter("idCliente", Spartacus.Database.Type.INTEGER);
            cmd.AddParameter("idTecnico", Spartacus.Database.Type.INTEGER);
            cmd.AddParameter("valor", Spartacus.Database.Type.DOUBLE);

            // valor com acento será mantido por causa do false
            cmd.SetValue("situacao", Os.Situacao, false);
            cmd.SetValue("defeito", Os.Defeito, false);
            cmd.SetValue("descricao", Os.Descricao, false);
            cmd.SetValue("observacao", Os.Observacao, false);
            cmd.SetValue("numeroDeSerie", Os.NumeroSerie);
            cmd.SetValue("equipamento", Os.Equipamento, false);
            cmd.SetValue("dataEntradaServico", Os.dataEntradaServico);
            cmd.SetValue("idCliente", Os.IDCliente.ToString());
            cmd.SetValue("idTecnico", Os.IDTecnico.ToString());
            cmd.SetValue("valor", Os.ValorOrcamento.ToString());

            try
            {
                database = new Spartacus.Database.Sqlite(DB.GetStrConection());

                // desabilitando seguranca de execucao de comandos
                database.SetExecuteSecurity(false);

                database.Execute(cmd.GetUpdatedText());

                return("Ordem de serviço numero foi salva com sucesso!");
            }
            catch (Exception ex)
            {
                ControllerArquivoLog.GeraraLog(ex);
                return(String.Format("Ocorreu um erro ao tental salvar a Ordem de serviço:{0}", ex.Message));
            }
        }
예제 #23
0
        /// <summary>
        /// Carregando usuario.
        /// </summary>
        /// <param name="Nome"></param>
        /// <returns>Usuario</returns>
        public static tecnico Carregar(int ID)
        {
            tecnico UsuarioBase = new tecnico();

            Spartacus.Database.Generic dataBase;
            System.Data.DataTable      Tabela;

            try
            {
                Tabela   = new DataTable("Tecnicos");
                dataBase = new Spartacus.Database.Sqlite(DB.GetStrConection());

                Tabela = dataBase.Query(String.Format("Select * from tecnicos WHERE Id = {0}", ID), "Tecnicos");


                foreach (DataRow r in Tabela.Rows)
                {
                    foreach (DataColumn c in Tabela.Columns)
                    {
                        switch (c.ColumnName)
                        {
                        case "Id":
                            UsuarioBase.Id = Convert.ToInt32(r[c]);
                            break;

                        case "Login":
                            UsuarioBase.Nome = r[c].ToString();
                            break;

                        case "Senha":
                            UsuarioBase.Senha = r[c].ToString();
                            break;

                        case "NivelAcesso":
                            UsuarioBase.NivelAcesso = Convert.ToBoolean(r[c]);
                            break;
                        }
                    }
                }
            }
            catch (Exception exc)
            {
                ControllerArquivoLog.GeraraLog(exc);
            }

            return(UsuarioBase);
        }
예제 #24
0
        /// <summary>
        /// Verificando se o usuário existe.
        /// </summary>
        /// <param name="Nome"></param>
        /// <returns></returns>
        public static bool Autenticar(string Login, string Senha)
        {
            bool UsuarioEncontrado = false;

            Spartacus.Database.Generic dataBase;
            DataTable Tabela = new DataTable("Tecnicos");

            Spartacus.Database.Command cmd = new Spartacus.Database.Command();

            cmd.v_text = "Select * from Tecnicos where Login = #login# and Senha = #senha# and Status <> #status#";

            cmd.AddParameter("Login", Spartacus.Database.Type.STRING);
            cmd.AddParameter("senha", Spartacus.Database.Type.STRING);
            cmd.AddParameter("status", Spartacus.Database.Type.BOOLEAN);


            cmd.SetValue("status", Convert.ToString('0'));
            cmd.SetValue("Login", Login.ToLower());
            cmd.SetValue("senha", Senha);

            try
            {
                dataBase = new Spartacus.Database.Sqlite(DB.GetStrConection());

                Tabela = dataBase.Query(cmd.GetUpdatedText(), "Tecnicos");

                if (Tabela.Rows.Count == 1)
                {
                    UsuarioEncontrado = true;
                }
            }
            catch (Spartacus.Database.Exception ex)
            {
                ControllerArquivoLog.GeraraLog(ex);
                UsuarioEncontrado = false;
            }
            catch (Exception Exc)
            {
                ControllerArquivoLog.GeraraLog(Exc);

                UsuarioEncontrado = false;
            }

            return(UsuarioEncontrado);
        }
예제 #25
0
        /// <summary>
        /// Salvando novo usuário
        /// </summary>
        /// <param name="Nome"></param>
        /// <param name="Senha"></param>
        /// <param name="NivelAcesso"></param>
        /// <returns></returns>
        public static String Criar(String Nome, String Senha, char NivelAcesso)
        {
            string Saida = "";

            if (!VerificarExistenciaUsuario(Nome))
            {
                Spartacus.Database.Generic dataBase;
                Spartacus.Database.Command cmd = new Spartacus.Database.Command();

                cmd.v_text = "insert into Tecnicos (login,senha,nivelacesso,Status) values (#login#,#senha#,#nivelacesso#,#status#);";

                cmd.AddParameter("login", Spartacus.Database.Type.STRING);
                cmd.AddParameter("senha", Spartacus.Database.Type.STRING);
                cmd.AddParameter("nivelacesso", Spartacus.Database.Type.BOOLEAN);
                cmd.AddParameter("Status", Spartacus.Database.Type.BOOLEAN);

                cmd.SetValue("login", Nome.ToLower());
                cmd.SetValue("senha", Senha);
                cmd.SetValue("nivelacesso", NivelAcesso.ToString());
                cmd.SetValue("status", Convert.ToString('1'));

                try
                {
                    dataBase = new Spartacus.Database.Sqlite(DB.GetStrConection());

                    dataBase.Execute(cmd.GetUpdatedText());

                    Saida = "Tecnico cadastrado com sucesso!";
                }
                catch (Exception Exc)
                {
                    ControllerArquivoLog.GeraraLog(Exc);

                    Saida = ("Erro: " + Exc.Message);
                }
            }
            else
            {
                Saida = "Erro! já existe um usuário com esse mesmo login";
            }



            return(Saida);
        }
        /// <summary>
        /// Retorna um DataTable com todos os ids das Ordens de serviço.
        /// </summary>
        /// <returns>The lista.</returns>
        public static DataTable CarregarListaDeIds()
        {
            DataTable tabela = new DataTable("ordemdeservico");

            Spartacus.Database.Generic database;

            try
            {
                database = new Spartacus.Database.Sqlite(DB.GetStrConection());

                tabela = database.Query("select ID from ordemdeservico where Situacao <> 'Finalizado'", "Ordemdeservico");
            }
            catch (Exception ex)
            {
                ControllerArquivoLog.GeraraLog(ex);
            }
            return(tabela);
        }
        public static bool VerificarInformacoesDoServidorSMTP(Email InformacoesServidor)
        {
            SmtpClient  smtp = new SmtpClient(InformacoesServidor.Host, InformacoesServidor.Port); //Servidor
            MailMessage mail = new MailMessage();                                                  //Menssagem

            mail.From = new MailAddress(InformacoesServidor.email);


            //Configurando servidor.
            smtp.EnableSsl             = true;
            smtp.UseDefaultCredentials = false;
            smtp.Credentials           = new System.Net.NetworkCredential(InformacoesServidor.email, InformacoesServidor.Senha);//Passando Login e senha do e-mail da empresa(para enviar)


            //Assunto do email.
            mail.Subject = String.Format("Email de testes Software Ordem de Serviço");

            //Informando sobre o corpo.
            mail.IsBodyHtml = true;

            //Conteúdo do email.
            mail.Body = "Email configurado com sucesso!";

            //Adicionando E-mail do cliente para enviar.
            mail.To.Add("*****@*****.**");

            //Prioridade de Envio.
            mail.Priority = MailPriority.High;


            try
            {
                //Envia o email.
                smtp.Send(mail);

                return(true);
            }
            catch (System.Exception exc)
            {
                //Gerando arquivo de Log
                ControllerArquivoLog.GeraraLog(exc);
                return(false);
            }
        }
        /// <summary>
        /// Retorna um DataTable com todas os orçamentos.(Ordemd e serviço com Situação = Orçamento)
        /// </summary>
        /// <returns>The lista.</returns>
        public static DataTable CarregarListaOrcamentos()
        {
            DataTable tabela = new DataTable("ordemdeservico");

            Spartacus.Database.Generic database;

            try
            {
                database = new Spartacus.Database.Sqlite(DB.GetStrConection());

                tabela = database.Query(@"select Id, Equipamento, NumeroDeSerie, Defeito, DataEntradaServico, ValorOrcamento from OrdemDeServico
                                          where Situacao = 'Orçamento'", "Ordemdeservico");
            }
            catch (Exception ex)
            {
                ControllerArquivoLog.GeraraLog(ex);
            }
            return(tabela);
        }
예제 #29
0
        /// <summary>
        /// Preenchendo a classe Pessoa com as informações do DataTable
        /// </summary>
        /// <returns>The cliente.</returns>
        /// <param name="tabela">Tabela.</param>
        private static Pessoa PreencherCliente(DataTable tabela)
        {
            List <string> InfoCliente = new List <string>();
            Pessoa        Cliente     = new Pessoa();


            try
            {
                foreach (DataRow r in tabela.Rows)
                {
                    foreach (DataColumn c in tabela.Columns)
                    {
                        InfoCliente.Add(r[c].ToString());
                    }
                }

                Cliente.ID                = Convert.ToInt16(InfoCliente[0]);
                Cliente.Nome              = InfoCliente[1];
                Cliente.Tipo              = InfoCliente[2];
                Cliente.Email             = InfoCliente[3];
                Cliente.Logradouro        = InfoCliente[4];
                Cliente.Complemento       = InfoCliente[5];
                Cliente.SiglaEstado       = InfoCliente[6];
                Cliente.Cidade            = InfoCliente[7];
                Cliente.Bairro            = InfoCliente[8];
                Cliente.Cep               = InfoCliente[9];
                Cliente.Sexo              = InfoCliente[10];
                Cliente.Cpf               = InfoCliente[11];
                Cliente.Celular           = InfoCliente[12];
                Cliente.DataDeNascimento  = InfoCliente[13];
                Cliente.RazaoSocial       = InfoCliente[14];
                Cliente.Cnpj              = InfoCliente[15];
                Cliente.InscricaoEstadual = InfoCliente[16];
                Cliente.Status            = Convert.ToBoolean(InfoCliente[17]);
            }
            catch (Exception ex)
            {
                ControllerArquivoLog.GeraraLog(ex);
            }

            InfoCliente.Clear();
            return(Cliente);
        }
예제 #30
0
        /// <summary>
        /// Extraindo informações do "Zip" e colocando na pasta do software.
        /// </summary>
        /// <param name="localizacaoArquivoZip"></param>
        /// <param name="destino"></param>
        public static string ExtrairArquivoZip(string localizacaoArquivoZip, string destino)
        {
            string saida;

            if (File.Exists(localizacaoArquivoZip))
            {
                //recebe a localização do arquivo zip
                ZipFile zip = new ZipFile(localizacaoArquivoZip);
                {
                    //verifica se o destino existe
                    if (Directory.Exists(destino))
                    {
                        try
                        {
                            //extrai o arquivo zip para o destino
                            zip.ExtractExistingFile = ExtractExistingFileAction.OverwriteSilently; // Sobrepor os arquivos para não dar erro de arquivo já existente.
                            zip.ExtractAll(destino);


                            saida = "O backup fou restaurado com sucesso. Reinicie o software para finalizar a operação.";
                        }
                        catch (System.Exception exc)
                        {
                            saida = "Falha ao restaurar o backup";

                            ControllerArquivoLog.GeraraLog(exc);
                        }
                    }
                    else
                    {
                        //lança uma exceção se o destino não existe
                        saida = "O arquivo destino não foi localizado";
                    }
                }
            }
            else
            {
                //lança uma exceção se a origem não existe
                saida = "O Arquivo Zip não foi localizado";
            }
            return(saida);
        }