示例#1
0
 public bool Adicionar(Agenda agenda)
 {
     agenda.Horario = null;
     agenda.Computador = null;
     agenda.Aluno = null;
     _db.Agendas.Add(agenda);
     return _db.SaveChanges() > 0;
 }
示例#2
0
        public bool VerificarSePodeAgendar(Agenda agenda)
        {
            var result = !Get(x => x.HorarioId.Equals(agenda.HorarioId)
                          && x.ComputadorId.Equals(agenda.ComputadorId)).Any();

            if (!result) return false;
            var horario = _db.Horarios.First(x => x.Id.Equals(agenda.HorarioId));
            var datas = Get(x => x.ComputadorId.Equals(agenda.ComputadorId) &&
                                 x.Horario.Dia.Equals(horario.Dia), "Horario");

            foreach (var item in datas)
            {
                var horaBanco = DateTime.ParseExact(item.Horario.HoraInicial, "H:m", null).Hour;
                var horaBanco2 = DateTime.ParseExact(item.Horario.HoraFinal, "H:m", null).Hour;
                var intervaloBanco = horaBanco2 - horaBanco;

                for (var i = 0; i < intervaloBanco && result; i++)
                {
                    var horaAgenda = DateTime.ParseExact(horario.HoraInicial, "H:m", null).Hour;
                    var horaAgenda2 = DateTime.ParseExact(horario.HoraFinal, "H:m", null).Hour;
                    var intervaloAgenda = horaAgenda2 - horaAgenda;

                    for (var j = 0; j < intervaloAgenda && result; j++)
                    {
                        if (horaBanco.Equals(horaAgenda))
                        {
                            result = false;
                        }
                        horaAgenda++;
                    }
                    horaBanco++;
                }

                if (!result)
                    break;
            }
            return result;
        }
示例#3
0
 public bool Excluir(Agenda agenda)
 {
     _db.Agendas.Remove(agenda);
     return _db.SaveChanges() > 0;
 }