示例#1
0
        public ActionResult Create(ViewModel <Vaga, TecnologiaVaga, Tecnologia> viewModel, string[] tecnologiasSelecionadas, string[] pesos)
        {
            if (ModelState.IsValid)
            {
                var pesoTecnologia = pesos.ToList();
                pesoTecnologia.RemoveAll(item => item == "0");
                db.Entry(viewModel.genericModel).State = EntityState.Modified;
                // Busca as tecnologias e os relacionamentos novamente
                viewModel.List     = db.TecnologiaVaga.Where(o => o.VagaID == viewModel.genericModel.ID).ToList();
                viewModel.FullList = db.Tecnologias.ToList();
                // Novos
                int i;

                for (i = 0; i < tecnologiasSelecionadas.Length; i++)
                {
                    TecnologiaVaga tv = new TecnologiaVaga();
                    tv.Vaga         = viewModel.genericModel;
                    tv.VagaID       = viewModel.genericModel.ID;
                    tv.TecnologiaID = Convert.ToInt32(tecnologiasSelecionadas[i]);
                    tv.Tecnologia   = db.Tecnologias.Where(a => a.ID == tv.TecnologiaID).Single();
                    tv.Peso         = Convert.ToInt32(pesoTecnologia[i]);
                    db.TecnologiaVaga.Add(tv);
                }

                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            return(View(viewModel.genericModel));
        }
示例#2
0
        public ActionResult DeleteConfirmed(int id)
        {
            TecnologiaVaga tecnologiavaga = db.TecnologiaVaga.Find(id);

            db.TecnologiaVaga.Remove(tecnologiavaga);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
示例#3
0
        public ActionResult Edit(ViewModel <Vaga, TecnologiaVaga, Tecnologia> viewModel, string[] tecnologiasSelecionadas, string[] pesos)
        {
            if (ModelState.IsValid)
            {
                var pesoTecnologia = pesos.ToList();
                pesoTecnologia.RemoveAll(item => item == "0");
                db.Entry(viewModel.genericModel).State = EntityState.Modified;
                // Busca as tecnologias e os relacionamentos novamente
                viewModel.List     = db.TecnologiaVaga.Where(o => o.VagaID == viewModel.genericModel.ID).ToList();
                viewModel.FullList = db.Tecnologias.ToList();
                // Novos
                int i;

                for (i = 0; i < tecnologiasSelecionadas.Length; i++)
                {
                    TecnologiaVaga tv = null;
                    try
                    {
                        tv = viewModel.List.Single(x => x.TecnologiaID.ToString().Equals(tecnologiasSelecionadas[i]));
                    } catch (Exception e)
                    {
                    }
                    // se nao existe, cria um relacionamento novo
                    if (tv == null)
                    {
                        tv              = new TecnologiaVaga();
                        tv.Vaga         = viewModel.genericModel;
                        tv.VagaID       = viewModel.genericModel.ID;
                        tv.TecnologiaID = Convert.ToInt32(tecnologiasSelecionadas[i]);
                        tv.Tecnologia   = db.Tecnologias.Where(a => a.ID == tv.TecnologiaID).Single();
                        tv.Peso         = Convert.ToInt32(pesoTecnologia[i]);
                        db.TecnologiaVaga.Add(tv);
                    }
                    else
                    {
                        // se existe, atualiza
                        tv.Peso            = Convert.ToInt32(pesoTecnologia[i]);
                        db.Entry(tv).State = EntityState.Modified;
                    }
                }


                // Removidos ou atualizados
                foreach (var tecnologiaVaga in viewModel.List)
                {
                    if (!tecnologiasSelecionadas.Any(x => x.Equals(tecnologiaVaga.TecnologiaID.ToString())))
                    {
                        db.TecnologiaVaga.Remove(tecnologiaVaga);
                    }
                }

                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            return(View(viewModel.genericModel));
        }
示例#4
0
        //
        // GET: /TecnologiaVaga/Details/5

        public ActionResult Details(int id = 0)
        {
            TecnologiaVaga tecnologiavaga = db.TecnologiaVaga.Find(id);

            if (tecnologiavaga == null)
            {
                return(HttpNotFound());
            }
            return(View(tecnologiavaga));
        }
示例#5
0
 public ActionResult Edit(TecnologiaVaga tecnologiavaga)
 {
     if (ModelState.IsValid)
     {
         db.Entry(tecnologiavaga).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.TecnologiaID = new SelectList(db.Tecnologias, "ID", "NomeTecnologia", tecnologiavaga.TecnologiaID);
     ViewBag.VagaID       = new SelectList(db.Vagas, "ID", "NomeVaga", tecnologiavaga.VagaID);
     return(View(tecnologiavaga));
 }
示例#6
0
        //
        // GET: /TecnologiaVaga/Edit/5

        public ActionResult Edit(int id = 0, int id2 = 0)
        {
            TecnologiaVaga tecnologiavaga = db.TecnologiaVaga.Find(id, id2);

            if (tecnologiavaga == null)
            {
                return(HttpNotFound());
            }
            ViewBag.TecnologiaID = new SelectList(db.Tecnologias, "ID", "NomeTecnologia", tecnologiavaga.TecnologiaID);
            ViewBag.VagaID       = new SelectList(db.Vagas, "ID", "NomeVaga", tecnologiavaga.VagaID);
            return(View(tecnologiavaga));
        }
示例#7
0
        public ActionResult Create(TecnologiaVaga tecnologiavaga)
        {
            if (ModelState.IsValid)
            {
                db.TecnologiaVaga.Add(tecnologiavaga);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.TecnologiaID = new SelectList(db.Tecnologias, "ID", "NomeTecnologia", tecnologiavaga.TecnologiaID);
            ViewBag.VagaID       = new SelectList(db.Vagas, "ID", "NomeVaga", tecnologiavaga.VagaID);
            return(View(tecnologiavaga));
        }