예제 #1
0
        public List<Horario> Adicionar(Horario horario)
        {
            var listHorarios = new List<Horario>();
            var horaBase = DateTime.ParseExact(horario.HoraInicial, "H:m", null).Hour;
            var horaLimite = DateTime.ParseExact(horario.HoraFinal, "H:m", null).Hour;
            var intervalo = horaLimite - horaBase;

            for (var i = 0; i < intervalo; i++)
            {
                var inicial = horaBase + i;
                var final = horaBase + i + 1;

                var horarioAdd = new Horario
                {
                    Dia = horario.Dia,
                    HoraInicial = inicial < 10 ? "0" + inicial + ":00" : inicial + ":00",
                    HoraFinal = final < 10 ? "0" + final + ":00" : final + ":00"
                };

                if (VerificaExistente(horarioAdd))
                {
                    listHorarios.Add(horarioAdd);
                    continue;
                }

                VerificaOrdem(horarioAdd);
                _db.Horarios.Add(horarioAdd);
                listHorarios.Add(horarioAdd);
            }

            _db.SaveChanges();
            return listHorarios;
        }
예제 #2
0
 public bool Alterar(Horario horario)
 {
     VerificaOrdem(horario);
     _db.Entry(horario).State = EntityState.Modified;
     return _db.SaveChanges() > 0;
 }
예제 #3
0
 public void VerificaOrdem(Horario horario)
 {
     switch (horario.Dia)
     {
         case "Segunda": horario.Ordem = 1; break;
         case "Terça": horario.Ordem = 2; break;
         case "Quarta": horario.Ordem = 3; break;
         case "Quinta": horario.Ordem = 4; break;
         case "Sexta": horario.Ordem = 5; break;
     }
 }
예제 #4
0
 public bool VerificaExistente(Horario horario)
 {
     var horarioBanco = Get(x => x.Dia.Equals(horario.Dia) &&
                                 x.HoraInicial.Equals(horario.HoraInicial) &&
                                 x.HoraFinal.Equals(horario.HoraFinal));
     var first = horarioBanco.FirstOrDefault();
     if (first == null) return false;
     horario.Id = first.Id;
     return true;
 }
예제 #5
0
        private void btnGravar_Click(object sender, EventArgs e)
        {
            horarioApp = new ServicoDeHorario();
            objHorario = new Horario();
            lbMensagem.Visible = false;
            bool result = true;

            objHorario.HoraInicial = dtpHoraInicial.Value.Hour.ToString().PadLeft(2, '0') + ":" + dtpHoraInicial.Value.Minute.ToString().PadLeft(2, '0');
            objHorario.HoraFinal = dtpHoraFinal.Value.Hour.ToString().PadLeft(2, '0') + ":" + dtpHoraFinal.Value.Minute.ToString().PadLeft(2, '0');
            objHorario.Dia = cbbDia.SelectedItem.ToString();

            if (iCodigo == 0)
            {
                result = horarioApp.Adicionar(objHorario).Any();
            }
            else
            {
                if (horarioApp.VerificaExistente(objHorario))
                {
                    result = false;
                }
                else
                {
                    var horarioBanco = horarioApp.GetById(iCodigo);
                    horarioBanco.HoraInicial = objHorario.HoraInicial;
                    horarioBanco.HoraFinal = objHorario.HoraFinal;
                    horarioBanco.Dia = objHorario.Dia;
                    result = horarioApp.Alterar(horarioBanco);
                }
            }

            if (result)
            {
                EstadoInicial();
                AlterarMsg("Gravado com sucesso!", false);
            }
            else
                AlterarMsg("Erro ao gravar. Verifique se o horário já não está cadastrado!", true);

            horarioApp.Dispose();
        }
예제 #6
0
        private void btnExcluir_Click(object sender, EventArgs e)
        {
            horarioApp = new ServicoDeHorario();
            objHorario = new Horario();
            lbMensagem.Visible = false;

            if (MessageBox.Show("Deseja excluir esse horario?", "Excluir", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                if (iCodigo > 0)
                {
                    objHorario = horarioApp.GetById(iCodigo);
                    if (horarioApp.Excluir(objHorario.Id))
                    {
                        EstadoInicial();
                        AlterarMsg("Excluido com sucesso!", false);
                    }
                    else
                    {
                        AlterarMsg("Erro ao excluir os dados!", true);
                    }
                }
                else
                    AlterarMsg("Nenhum horario para excluir!", true);
            }

            horarioApp.Dispose();
        }