コード例 #1
0
        public ActionResult AssociarFuncionario(int?coletaId)
        {
            if (coletaId == null)
            {
                string mensagem = "Id da coleta não informado!";
                return(RedirectToAction("Erro", "Home", new { Mensagem = mensagem }));
            }

            if (cooperativa == null)
            {
                string id = User.Identity.GetUserId();
                cooperativa = db.Cooperativas.Find(id);
            }

            var     funcionariosCoop = cooperativa.Funcionarios.ToList();
            var     funcionarios     = new List <FuncionarioColetaViewModel>();
            Coletas c = db.Coletas.Find(coletaId);

            foreach (var f in funcionariosCoop)
            {
                if (!c.Funcionarios.Contains(f))
                {
                    funcionarios.Add(new FuncionarioColetaViewModel()
                    {
                        funcionarioId = f.funcionarioId,
                        nome          = f.nome,
                        selecionado   = false
                    });
                }
            }

            AssociarFuncionarioViewModel model = new AssociarFuncionarioViewModel()
            {
                coletaId     = coletaId.Value,
                funcionarios = funcionarios
            };

            ViewBag.retorno = @Url.Action("DetalheColeta", "Cooperativas", new { id = coletaId, aba = 1 });

            return(View(model));
        }
コード例 #2
0
        public ActionResult AssociarFuncionario(AssociarFuncionarioViewModel model)
        {
            Coletas c     = db.Coletas.Find(model.coletaId);
            bool    achou = false;

            foreach (var mf in model.funcionarios)
            {
                if (mf.selecionado)
                {
                    achou = true;
                    Funcionarios f = db.Funcionarios.Find(mf.funcionarioId);
                    c.Funcionarios.Add(f);
                }
            }

            if (achou)
            {
                db.SaveChanges();
                return(RedirectToAction("DetalheColeta", "Cooperativas", new { id = model.coletaId, aba = 1 }));
            }

            ViewBag.aviso = "Selecione pelo menos um funcionário!";
            return(View(model));
        }