public ActionResult Delete(Entidade model)
        {
            try
            {
                model = contexto.Entidades.Find(model.Id);

                if (model.Membros.Count > 0)
                {
                    ModelState.AddModelError("", "Não é possível excluir uma entidade com membros cadastrados.");
                    return View(model);
                }

                if (model.Contas.Count > 0)
                {
                    ModelState.AddModelError("", "Não é possível excluir uma entidade com usuários associadas a ela.");
                    return View(model);
                }

                contexto.Entidades.Remove(model);
                contexto.SaveChanges();

                return RedirectToAction("Index");
            }
            catch
            {
                return View(model);
            }
        }
        public ActionResult Create(Entidade model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    int idCentro = SessaoUsuario.Conta().Instituicao.Id;

                    model.Centro = contexto.Centros.Find(idCentro);
                    contexto.Entidades.Add(model);
                    contexto.SaveChanges();

                    model.Dirigente.Entidade = contexto.Entidades.Find(model.Id);
                    model.Secretario.Entidade = contexto.Entidades.Find(model.Id);
                    model.Tesoureiro.Entidade = contexto.Entidades.Find(model.Id);

                    contexto.Entry(model).State = System.Data.EntityState.Modified;
                    contexto.SaveChanges();

                    return RedirectToAction("Index");
                }

                return View(model);
            }
            catch(Exception ex)
            {
                ModelState.AddModelError("", ex.Message);
                return View(model);
            }
        }
        public ActionResult Create()
        {
            Entidade model = new Entidade();
            model.Endereco = new Endereco();

            return View(model);
        }
        public static bool AcessoPermitido(Entidade entidade)
        {
            if (InstituicaoDaSessao().IsCentro())
            {
                var centro = (Centro)InstituicaoDaSessao();
                return centro.EntidadePertenceAoCentro(entidade);
            }

            if (InstituicaoDaSessao().IsEntidade())
            {
                var id = ((Entidade)InstituicaoDaSessao()).Id;
                return entidade.Id == id;
            }

            return false;
        }
 public LancamentoController()
 {
     if (SessaoUsuario.Conta().Instituicao.IsEntidade())
         entidade_sessao = (Entidade)SessaoUsuario.Conta().Instituicao;
 }
Beispiel #6
0
 public bool EntidadePertenceAoCentro(Entidade entidade)
 {
     return this.Entidades.Where(e => e.Id == entidade.Id).FirstOrDefault() != null;
 }
        private void CriarViewBagsEdit(Entidade entidade, IQueryable<Membro> membros)
        {
            int idDirigente = entidade.Dirigente == null ? 0 : entidade.Dirigente.Id;
            int idSecretario = entidade.Secretario == null ? 0 : entidade.Secretario.Id;
            int idTesoreiro = entidade.Tesoureiro == null ? 0 : entidade.Tesoureiro.Id;

            ViewBag.Dirigentes = new SelectList(membros, "Id", "Nome", idDirigente);
            ViewBag.Tesoureiros = new SelectList(membros, "Id", "Nome", idTesoreiro);
            ViewBag.Secretarios = new SelectList(membros, "Id", "Nome", idSecretario);
        }
        public ActionResult Edit(Entidade model)
        {
            try
            {
                if (ModelState.IsValid)
                {

                    var entidade = contexto.Entidades.Find(model.Id);
                    var secretario = contexto.Membros.Where(d => d.Id == model.Secretario.Id).First();
                    var dirigente = contexto.Membros.Where(s => s.Id == model.Dirigente.Id).First();
                    var tesoureiro = contexto.Membros.Where(t => t.Id == model.Tesoureiro.Id).First();

                    contexto.Entry(entidade).CurrentValues.SetValues(model);
                    contexto.Entry(entidade.Endereco).CurrentValues.SetValues(model.Endereco);
                    entidade.Secretario = secretario;
                    entidade.Dirigente = dirigente;
                    entidade.Tesoureiro = tesoureiro;

                    contexto.SaveChanges();

                    return RedirectToAction("Index");
                }

                return View(model);
            }
            catch(Exception ex)
            {
                ModelState.AddModelError("", ex.Message);
                return View(model);
            }
        }