public void Save(Aniversariante aniversariante)
        {
            using (var connection = new SqlConnection(this.ConnectionString))
            {
                var sql = @" INSERT INTO TASK(Id, primeiroNome, segundoNome, dataAniversario)
                             VALUES (@P1, @P2, @P3, @P4)
                ";

                if (connection.State != System.Data.ConnectionState.Open)
                {
                    connection.Open();
                }

                SqlCommand sqlCommand = connection.CreateCommand();
                sqlCommand.CommandText = sql;
                sqlCommand.Parameters.AddWithValue("P1", aniversariante.Id);
                sqlCommand.Parameters.AddWithValue("P2", aniversariante.primeiroNome);
                sqlCommand.Parameters.AddWithValue("P3", aniversariante.segundoNome);
                sqlCommand.Parameters.AddWithValue("P4", aniversariante.dataAniversario);


                sqlCommand.ExecuteNonQuery();

                connection.Close();
            }
        }
        public void Update(Aniversariante aniversariante)
        {
            using (var connection = new SqlConnection(this.ConnectionString))
            {
                var sql = @" UPDATE TASK 
                             SET primeiroNome = @P1,
                             segundoNome = @P2
                             WHERE Id = @P3 
                ";

                if (connection.State != System.Data.ConnectionState.Open)
                {
                    connection.Open();
                }

                SqlCommand sqlCommand = connection.CreateCommand();
                sqlCommand.CommandText = sql;
                sqlCommand.Parameters.AddWithValue("P1", aniversariante.primeiroNome);
                sqlCommand.Parameters.AddWithValue("P2", aniversariante.segundoNome);
                sqlCommand.Parameters.AddWithValue("P3", aniversariante.Id);
                sqlCommand.ExecuteNonQuery();

                connection.Close();
            }
        }
示例#3
0
        public Aniversariante GetAniversarianteById(int id)
        {
            Aniversariante result = null;

            using (SqlConnection connection = new SqlConnection(this.ConnectionString))
            {
                string sql     = @"
                                SELECT ID, NOME, SOBRENOME, DATANASCIMENTO
                                FROM ANIVERSARIANTE
                                WHERE ID = @P1
                ";
                var    command = connection.CreateCommand();
                command.CommandText = sql;
                command.Parameters.AddWithValue("P1", id);
                command.CommandType = System.Data.CommandType.Text;

                connection.Open();

                SqlDataReader dr = command.ExecuteReader();

                while (dr.Read())
                {
                    result = new Aniversariante()
                    {
                        Id             = dr.GetInt32("ID"),
                        Nome           = dr.GetString("NOME"),
                        Sobrenome      = dr.GetString("SOBRENOME"),
                        DataNascimento = dr.GetDateTime("DATANASCIMENTO")
                    };
                }
                connection.Close();
            }

            return(result);
        }
        public List <Aniversariante> Pesquisar(string nome)
        {
            List <Aniversariante> todos = new List <Aniversariante>();

            using (var connection = new SqlConnection(this.ConnectionString))
            {
                if (connection.State != System.Data.ConnectionState.Open)
                {
                    connection.Open();
                }

                SqlCommand sqlcommand = connection.CreateCommand();

                sqlcommand.CommandText = "SELECT Id, primeiroNome, segundoNome, dataAniversario FROM TASK WHERE primeiroNome LIKE '%'+@P1+'%'";
                sqlcommand.Parameters.AddWithValue("P1", nome);

                SqlDataReader reader = sqlcommand.ExecuteReader();

                while (reader.Read())
                {
                    Aniversariante aniversariante = new Aniversariante()
                    {
                        Id              = Guid.Parse(reader["Id"].ToString()),
                        primeiroNome    = reader["primeiroNome"].ToString().Split(" ").First(),
                        segundoNome     = reader["segundoNome"].ToString().Split(" ").Last(),
                        dataAniversario = DateTime.Parse(reader["dataAniversario"].ToString())
                    };
                    todos.Add(aniversariante);
                }


                connection.Close();
            }
            return(todos);
        }
示例#5
0
        public void Update(Aniversariante aniversariante)
        {
            using (SqlConnection connection = new SqlConnection(this.ConnectionString))
            {
                string sql     = @"
                                UPDATE ANIVERSARIANTE
                                SET NOME = @P1,
                                SOBRENOME = @P2,
                                DATANASCIMENTO = @P3
                                WHERE ID = @P4;

                ";
                var    command = connection.CreateCommand();
                command.CommandText = sql;
                command.Parameters.AddWithValue("P1", aniversariante.Nome);
                command.Parameters.AddWithValue("P2", aniversariante.Sobrenome);
                command.Parameters.AddWithValue("P3", aniversariante.DataNascimento);
                command.Parameters.AddWithValue("P4", aniversariante.Id);
                command.CommandType = System.Data.CommandType.Text;

                connection.Open();
                command.ExecuteNonQuery();
                connection.Close();
            }
        }
        public IActionResult Save(Aniversariante model)
        {
            model.Id = Guid.NewGuid();

            aniversariantes.Add(model);
            return(RedirectToAction("Exibir", "Aniversariantes", new { message = "Aniversariante cadastrado com sucesso" }));
        }
示例#7
0
        public async Task <ActionResult <Aniversariante> > PostAniversariante(Aniversariante aniversariante)
        {
            aniversariante.id    = new Guid();
            aniversariante.ativo = true;
            _context.Add(aniversariante);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetAniversariante", new { id = aniversariante.id }, aniversariante));
        }
示例#8
0
 public ActionResult Create(Aniversariante aniversariante)
 {
     try
     {
         this.AniversarianteRepository.Save(aniversariante);
         return(RedirectToAction(nameof(Index)));
     }
     catch
     {
         return(View());
     }
 }
        public IActionResult Editar(Guid id, Aniversariante model)
        {
            var aniversarianteEdit = aniversariantes.Where(x => x.Id == id).FirstOrDefault();

            aniversarianteEdit.Nome       = model.Nome;
            aniversarianteEdit.Sobrenome  = model.Sobrenome;
            aniversarianteEdit.Nascimento = model.Nascimento;

            aniversariantes.Remove(aniversarianteEdit);
            aniversariantes.Add(aniversarianteEdit);

            return(RedirectToAction("Exibir", "Aniversariantes", new { message = "Aniversariante editado com sucesso" }));
        }
        public ActionResult Edit(int id, Aniversariante model)
        {
            try
            {
                model.Id = id;
                this.AniversarianteRepository.Update(model);

                return(RedirectToAction(nameof(Index)));
            }
            catch
            {
                return(View());
            }
        }
示例#11
0
        public IActionResult Save(Aniversariante model)
        {
            if (ModelState.IsValid == false)
            {
                return(View());
            }

            //Criando identificador unico
            model.Id = Guid.NewGuid();

            //Adicionando na "Tabela"
            TodoRepository.Save(model);

            return(RedirectToAction("Index", "Aniversariante", new { message = "Aniversariante cadastrado com sucesso" }));
        }
示例#12
0
        public IActionResult SaveEdit(Guid id, Aniversariante model)
        {
            if (ModelState.IsValid == false)
            {
                return(View());
            }

            var todoEdit = TodoRepository.GetById(id);

            todoEdit.primeiroNome = model.primeiroNome;
            todoEdit.segundoNome  = model.segundoNome;
            Convert.ToString(todoEdit.dataAniversario = model.dataAniversario);

            TodoRepository.Update(todoEdit);

            return(RedirectToAction("Index", "Aniversariante", new { message = "Aniversariante editado com sucesso" }));
        }
示例#13
0
        public void Save(Aniversariante aniversariante)
        {
            using (SqlConnection connection = new SqlConnection(this.ConnectionString))
            {
                string sql     = "INSERT INTO ANIVERSARIANTE(NOME, SOBRENOME, DATANASCIMENTO) VALUES(@P1, @P2, @P3)";
                var    command = connection.CreateCommand();
                command.CommandText = sql;
                command.Parameters.AddWithValue("P1", aniversariante.Nome);
                command.Parameters.AddWithValue("P2", aniversariante.Sobrenome);
                command.Parameters.AddWithValue("P3", aniversariante.DataNascimento);
                command.CommandType = System.Data.CommandType.Text;

                connection.Open();
                command.ExecuteNonQuery();
                connection.Close();
            }
        }
示例#14
0
        static void Main(string[] args)
        {
            ChannelFactory<IAniversarianteServiceChannel> cf =
                new ChannelFactory<IAniversarianteServiceChannel>("BasicHttpBinding_IAniversarianteService");

            IAniversarianteServiceChannel channel = cf.CreateChannel();

            var aniversariante = new Aniversariante { Nome = "José da Silva",Data=new DateTime(1999,08,20)};
            channel.AddAniversariante(aniversariante);
            channel.AddAniversariante(aniversariante);
            channel.AddAniversariante(aniversariante);

            var aniversariantes = channel.GetAniversariantes();
            aniversariantes.ToList().ForEach(d => { Console.WriteLine("Nome: {0} - Data: {1}",d.Nome,d.Data.ToShortDateString()); });

            channel.Close();
        }
示例#15
0
        public void Delete(Aniversariante aniversariante)
        {
            using (SqlConnection connection = new SqlConnection(this.ConnectionString))
            {
                string sql     = @"
                                DELETE FROM ANIVERSARIANTE
                                WHERE ID = @P1;
                ";
                var    command = connection.CreateCommand();
                command.CommandText = sql;
                command.Parameters.AddWithValue("P1", aniversariante.Id);
                command.CommandType = System.Data.CommandType.Text;

                connection.Open();
                command.ExecuteNonQuery();
                connection.Close();
            }
        }
        public Aniversariante GetById(Guid id)
        {
            List <Aniversariante> result = new List <Aniversariante>();

            using (var connection = new SqlConnection(this.ConnectionString))
            {
                var sql = @" SELECT Id, primeiroNome, segundoNome, dataAniversario 
                             FROM TASK
                             WHERE Id = @P1
                ";

                if (connection.State != System.Data.ConnectionState.Open)
                {
                    connection.Open();
                }

                SqlCommand sqlCommand = connection.CreateCommand();
                sqlCommand.CommandText = sql;
                sqlCommand.Parameters.AddWithValue("P1", id);

                SqlDataReader reader = sqlCommand.ExecuteReader();

                while (reader.Read())
                {
                    Aniversariante aniversariante = new Aniversariante()
                    {
                        Id              = Guid.Parse(reader["Id"].ToString()),
                        primeiroNome    = reader["primeiroNome"].ToString(),
                        segundoNome     = reader["segundoNome"].ToString(),
                        dataAniversario = DateTime.Parse(reader["dataAniversario"].ToString())
                    };

                    result.Add(aniversariante);
                }

                connection.Close();
            }

            return(result.FirstOrDefault());
        }
示例#17
0
        static void Main(string[] args)
        {
            ChannelFactory <IAniversarianteServiceChannel> cf =
                new ChannelFactory <IAniversarianteServiceChannel>("BasicHttpBinding_IAniversarianteService");

            IAniversarianteServiceChannel channel = cf.CreateChannel();

            var aniversariante = new Aniversariante {
                Nome = "José da Silva", Data = new DateTime(1999, 08, 20)
            };

            channel.AddAniversariante(aniversariante);
            channel.AddAniversariante(aniversariante);
            channel.AddAniversariante(aniversariante);

            var aniversariantes = channel.GetAniversariantes();

            aniversariantes.ToList().ForEach(d => { Console.WriteLine("Nome: {0} - Data: {1}", d.Nome, d.Data.ToShortDateString()); });


            channel.Close();
        }
        public List <Aniversariante> GetAll()
        {
            List <Aniversariante> result = new List <Aniversariante>();

            using (var connection = new SqlConnection(this.ConnectionString))
            {
                var sql = @" SELECT Id, primeiroNome, segundoNome, dataAniversario FROM TASK ORDER BY dataAniversario DESC";

                if (connection.State != System.Data.ConnectionState.Open)
                {
                    connection.Open();
                }

                SqlCommand sqlCommand = connection.CreateCommand();
                sqlCommand.CommandText = sql;

                SqlDataReader reader = sqlCommand.ExecuteReader();

                while (reader.Read())
                {
                    Aniversariante aniversariante = new Aniversariante()
                    {
                        Id              = Guid.Parse(reader["Id"].ToString()),
                        primeiroNome    = reader["primeiroNome"].ToString(),
                        segundoNome     = reader["segundoNome"].ToString(),
                        dataAniversario = Convert.ToDateTime(reader["dataAniversario"])
                    };

                    result.Add(aniversariante);
                }

                connection.Close();
            }

            return(result);
        }
        static void Main(string[] args)
        {
            CultureInfo.DefaultThreadCurrentCulture = CultureInfo.CreateSpecificCulture("pt-BR");

            var repositorioDb = new AniversarianteDB();

            const string pressioneQualquerTecla = "Pressione qualquer tecla para exibir o menu principal...";

            string opcaoEscolhida;

            do
            {
                Console.Clear();
                Console.WriteLine("Sistema de Gerenciamento de Aniversarios");
                Console.WriteLine("1 - Pesquisar pessoas");
                Console.WriteLine("2 - Adicionar nova pessoa");
                Console.WriteLine("3 - Sair");

                opcaoEscolhida = Console.ReadLine();

                switch (opcaoEscolhida)
                {
                case "1":
                    Console.WriteLine("Digite o nome ou parte do nome da(o) aniversariante que deseja pesquisar:");
                    var termoDePesquisa     = Console.ReadLine();
                    var buscaAniversariante = repositorioDb.Pesquisar(termoDePesquisa);

                    if (buscaAniversariante.Count > 0)
                    {
                        Console.WriteLine($"Selecione uma das opções abaixo para os detalhes do aniversariante:");
                        for (var index = 0; index < buscaAniversariante.Count; index++)
                        {
                            Console.WriteLine($"{index} - Aniversariante: {buscaAniversariante[index].Nome}");
                        }

                        ushort indexAExibir;
                        if (!ushort.TryParse(Console.ReadLine(), out indexAExibir) || indexAExibir >= buscaAniversariante.Count)
                        {
                            Console.WriteLine($"Opcao inválida! {pressioneQualquerTecla}");
                            Console.ReadKey();
                            break;
                        }

                        if (indexAExibir < buscaAniversariante.Count)
                        {
                            var aniversarianteEncontrado = buscaAniversariante[indexAExibir];

                            Console.WriteLine("Dados do aniversariante:");
                            Console.WriteLine($"Nome completo: {aniversarianteEncontrado.Nome}");
                            Console.WriteLine($"DataNascimento: { aniversarianteEncontrado.DataNascimento}");

                            var tempo = aniversarianteEncontrado.CalcularDiasParaAniversario();
                            if (tempo.Days > 0)
                            {
                                Console.Write($"Falta(m) {tempo.Days} dia(s) para esse aniversário. {pressioneQualquerTecla}");
                            }
                            else if (tempo.Days == 0)
                            {
                                Console.Write($"Parabéns. Você está fazendo aniversário hoje! {pressioneQualquerTecla}");
                            }
                            else
                            {
                                Console.Write($"Você já fez aniversário neste ano. {pressioneQualquerTecla}");
                            }

                            Console.WriteLine(pressioneQualquerTecla);
                            Console.ReadKey();
                        }
                    }
                    else
                    {
                        Console.WriteLine($"Não foi encontrado nenhum aniversariante! {pressioneQualquerTecla}");
                        Console.ReadKey();
                    }
                    break;

                case "2":

                    Console.WriteLine("Informe o nome da(0) aniversariante que deseja adicionar");
                    var nome = Console.ReadLine();

                    Console.WriteLine("Informe o sobrenome(o) da aniversariante que deseja adicionar");
                    var sobreNome = Console.ReadLine();

                    Console.WriteLine("Informe a data de nascimento no formato dd/MM/yyyy");
                    DateTime inputDataNascimento;
                    if (!DateTime.TryParse(Console.ReadLine(), out inputDataNascimento))
                    {
                        Console.WriteLine($"Data de nascimento não permitido! Dados descartados! {pressioneQualquerTecla}");
                        Console.ReadKey();
                        break;
                    }

                    Console.WriteLine("Os Dados do aniversariante estão corretos? ");
                    Console.WriteLine($"Nome: {nome} {sobreNome}");
                    Console.WriteLine($"Data de Nascimento: {inputDataNascimento: dd/MM/yyyy}");
                    Console.WriteLine("1 - Sim \n2 - Não");
                    var opcaoAdicionar = Console.ReadLine();

                    if (opcaoAdicionar == "1")
                    {
                        var aniversariante = new Aniversariante(nome, sobreNome, Convert.ToDateTime(inputDataNascimento));

                        repositorioDb.Adicionar(aniversariante);

                        Console.WriteLine($"Aniversariante adicionado com sucesso! {pressioneQualquerTecla}");
                    }
                    else if (opcaoAdicionar == "2")
                    {
                        Console.WriteLine($"Dados descartados! {pressioneQualquerTecla}");
                    }
                    else
                    {
                        Console.WriteLine($"Opção inválida! {pressioneQualquerTecla}");
                    }

                    Console.ReadKey();
                    break;

                case "3":
                    break;

                default:
                    Console.WriteLine($"Opção inválida! {pressioneQualquerTecla}");
                    Console.ReadKey();
                    break;
                }
            }while (opcaoEscolhida != "3");
        }
 public void Adicionar(Aniversariante aniversariante)
 {
     aniversarianteList.Add(aniversariante);
 }