Exemplo n.º 1
0
 public Atividade EditarAtividade(Atividade atividade)
 {
     using (TimeSContext db = new TimeSContext())
     {
         //try
         //{
             List<Tarefa> tarefas = atividade.Tarefas;
             if (tarefas != null)
             {
                 tarefas.ForEach(t => t.Atividade_Id = atividade.Id);
                 tarefas.ForEach(t => db.Entry(t).State = t.Id == 0 ? EntityState.Added : EntityState.Modified);
             }
             atividade.Participantes.ToList().ForEach(u => db.Users.Attach(u));
             db.Atividades.Attach(atividade);
             db.Entry(atividade).State = EntityState.Modified;
             db.SaveChanges();
             return db.Atividades.Find(atividade.Id);
         //}
         //catch (Exception ex)
         //{
         //    Debug.WriteLine(ex.Message);
         //    return null;
         //}
     }
 }
Exemplo n.º 2
0
 public Atividade AddAtividade(AtividadeViewModel atividade)
 {
     IUsuarioDAL usuarioDal = new UsuarioDAL();
     var tarefas = atividade.Tarefas != null ? atividade.Tarefas.ToList() : null;
     Atividade novaAtividade = new Atividade()
     {
         Nome = atividade.Nome,
         Descricao = atividade.Descricao,
         Responsavel_Id = atividade.Responsavel_Id,
         Criador_Id = atividade.Criador_Id,
         Tipo_Id = atividade.Tipo_Id,
         Tarefas = tarefas
     };
     if(atividade.Participantes != null)
         atividade.Participantes.ToList()
             .ForEach(
             p => novaAtividade.Participantes.Add(usuarioDal.GetUsuario(p))
             );
     return _atividadeDal.AddAtividade(novaAtividade);
 }
Exemplo n.º 3
0
 public void AddAtividadeAosUsuarios(Atividade atividade, List<string> participantes)
 {
     using (TimeSContext db = new TimeSContext())
     {
         db.Atividades.Attach(atividade);
         foreach (var participante in participantes)
         {
             Usuario usuario = db.Users.Include(u => u.Atividades).First(u => u.Id.Equals(participante));
             if (usuario != null)
             {
                 if (usuario.Atividades.All(t => t.Id != atividade.Id))
                 {
                     usuario.Atividades.Add(atividade);
                     db.Entry(usuario).State = EntityState.Modified;
                 }
                 db.SaveChanges();
             }
         }
     }
 }
Exemplo n.º 4
0
 public Atividade AddAtividade(Atividade atividade)
 {
     using (TimeSContext db = new TimeSContext())
     {
         try
         {
             var participantes = new List<string>();
             atividade.Participantes.ToList().ForEach(u => participantes.Add(u.Id));
             atividade.Participantes = new List<Usuario>();
             db.Atividades.Add(atividade);
             db.SaveChanges();
             AddAtividadeAosUsuarios(
                 db.Atividades.First(a => (a.Nome == atividade.Nome && a.Tipo_Id == atividade.Tipo_Id)),
                 participantes);
             return db.Atividades.First(a => (a.Nome == atividade.Nome && a.Tipo_Id == atividade.Tipo_Id));
         }
         catch (Exception ex)
         {
             Debug.Write(ex.Message);
             return null;
         }
     }
 }
Exemplo n.º 5
0
 public void RemoveUsuariosAtividades(Atividade atividade, List<string> participantes)
 {
     using (TimeSContext db = new TimeSContext())
     {
         var usuariosParticipantes = new List<Usuario>();
         participantes.ForEach(p => usuariosParticipantes.Add(db.Users.Find(p)));
         var naoMaisPartipantesDaAtividade =
             db.Atividades
                 .Include(a => a.Participantes)
                 .First(a => a.Id == atividade.Id).Participantes.Except(usuariosParticipantes);
     }
 }