Esempio n. 1
0
 public void AtualizaSeguidoresTarefas(List<string> seguidores, Tarefa tarefa)
 {
     using (TimeSContext db = new TimeSContext())
     {
         seguidores.ForEach(u => db.Entry(db.Users.Find(u)).State = EntityState.Modified);
         seguidores.ForEach(u => db.Users.Attach(db.Users.Find(u)));
         db.SaveChanges();
     }
 }
Esempio n. 2
0
 public Tarefa AddTarefa(Tarefa tarefa)
 {
     using (TimeSContext db = new TimeSContext())
     {
         var seguidores = new List<string>();
         tarefa.Seguidores.ToList().ForEach(u => seguidores.Add(u.Id));
         tarefa.Seguidores = new List<Usuario>();
         db.Tarefas.Add(tarefa);
         db.SaveChanges();
         AddTarefaAosUsuarios(
             db.Tarefas.First(t => t.Atividade_Id == tarefa.Atividade_Id && t.Nome == tarefa.Nome), seguidores);
         return db.Tarefas.First(t => t.Atividade_Id == tarefa.Atividade_Id && t.Nome == tarefa.Nome);
     }
 }
Esempio n. 3
0
 public void AddTarefaAosUsuarios(Tarefa tarefa,List<string> seguidores)
 {
     using (TimeSContext db = new TimeSContext())
     {
         db.Tarefas.Attach(tarefa);
         foreach (var seguidor in seguidores)
         {
             Usuario usuario = db.Users.Include(u => u.Tarefas).First(u => u.Id.Equals(seguidor));
             if (usuario != null)
             {
                 if (usuario.Tarefas.All(t => t.Id != tarefa.Id))
                 {
                     usuario.Tarefas.Add(tarefa);
                     db.Entry(usuario).State = EntityState.Modified;
                 }
                 db.SaveChanges();
             }
         }
     }
 }
Esempio n. 4
0
 public Tarefa AddTarefa(int atividadeId, TarefaViewModel tarefa)
 {
     IUsuarioDAL usuarioDal = new UsuarioDAL();
     Tarefa novaTarefa = new Tarefa()
     {
         Nome = tarefa.Nome,
         Descricao = tarefa.Descricao,
         Inicio = Convert.ToDateTime(tarefa.Inicio+" "+tarefa.Hora_Inicio),
         Entrega = Convert.ToDateTime(tarefa.Entrega + " " + tarefa.Hora_Entrega),
         Atividade_Id = atividadeId,
         Status = (Status) tarefa.Status_Id,
         Responsavel_Id = tarefa.Responsavel_Id
     };
     novaTarefa.Seguidores = new List<Usuario>();
     if (tarefa.Seguidores != null)
         tarefa.Seguidores.ToList()
             .ForEach(
                 s => novaTarefa.Seguidores.Add(usuarioDal.GetUsuario(s))
             );
     return _tarefaDal.AddTarefa(novaTarefa);
 }
Esempio n. 5
0
        public Tarefa EditarTarefa(Tarefa tarefa)
        {
            using (TimeSContext db = new TimeSContext())
            {
                db.Tarefas.Include(t => t.Seguidores)
                    .First(t => t.Id.Equals(tarefa.Id))
                    .Seguidores.ToList()
                    .ForEach(
                        u =>
                            db.Tarefas.Include(t => t.Seguidores)
                                .First(t => t.Id.Equals(tarefa.Id))
                                .Seguidores.Remove(u)
                    );

                db.Tarefas.Remove(db.Tarefas.Include(t => t.Seguidores).First(t => t.Id.Equals(tarefa.Id)));
                db.SaveChanges();
            }
            using (TimeSContext db = new TimeSContext())
            {
                tarefa.Id = 0;
                tarefa.Seguidores.ToList().ForEach(u => db.Users.Attach(u));
                db.Tarefas.Add(tarefa);
                db.SaveChanges();
                return tarefa;
            }
        }