public ActionResult Salvar(StatusRequerimento statusRequerimento)
        {
            var model = new StatusRequerimentoVM();

            try
            {
                if (statusRequerimento.Id != 0)
                {
                    StatusRequerimentoServer.Atualizar(statusRequerimento);
                    model.StatusRequerimento = statusRequerimento;
                    model.Consistencia.Add("Alterado com sucesso!", ConsisteUtils.Tipo.Sucesso);
                }
                else
                {
                    StatusRequerimentoServer.Novo(statusRequerimento);
                    model.StatusRequerimento = statusRequerimento;
                    model.Consistencia.Add("Incluido com sucesso!", ConsisteUtils.Tipo.Sucesso);
                }
            }
            catch (Exception e)
            {
                model.StatusRequerimento = statusRequerimento;
                var consistencia = new ConsisteUtils();
                consistencia.Add(e.Message, ConsisteUtils.Tipo.Inconsistencia);
                model.Consistencia = consistencia;
            }


            return(View("Form", model));
        }
        public JsonResult ConsisteExcluir(StatusRequerimento statusRequerimento)
        {
            var consistencia = new ConsisteUtils();

            consistencia = StatusRequerimentoServer.ConsisteExcluir(statusRequerimento);

            return(Json(consistencia, JsonRequestBehavior.AllowGet));
        }
예제 #3
0
        public ConsisteUtils ConsisteNovo(StatusRequerimento statusRequerimento)
        {
            var consiste = new ConsisteUtils();

            if (string.IsNullOrWhiteSpace(statusRequerimento.Nome))
            {
                consiste.Add("O campo Nome não pode ficar em branco", ConsisteUtils.Tipo.Inconsistencia);
            }

            return(consiste);
        }
        public JsonResult ConsisteNovoAtualiza(StatusRequerimento statusRequerimento)
        {
            var consistencia = new ConsisteUtils();

            if (statusRequerimento.Id != 0)
            {
                consistencia = StatusRequerimentoServer.ConsisteAtualizar(statusRequerimento);
            }
            else
            {
                consistencia = StatusRequerimentoServer.ConsisteNovo(statusRequerimento);
            }

            return(Json(consistencia, JsonRequestBehavior.AllowGet));
        }
예제 #5
0
        public StatusRequerimento Excluir(StatusRequerimento statusRequerimento)
        {
            var consiste = ConsisteExcluir(statusRequerimento);

            if (consiste.Inconsistencias.Any())
            {
                throw new ArgumentException(consiste.Inconsistencias.ToString());
            }
            else
            {
                dbStatusRequerimento.Delete(statusRequerimento);
            }

            return(statusRequerimento);
        }
        public JsonResult ExcluirAjax(StatusRequerimento statusRequerimento)
        {
            var consistencia = new ConsisteUtils();

            try
            {
                StatusRequerimentoServer.Excluir(statusRequerimento);
                consistencia.Add("Registro excluído com sucesso!", ConsisteUtils.Tipo.Sucesso);
            }
            catch (Exception e)
            {
                consistencia.Add(e.Message, ConsisteUtils.Tipo.Inconsistencia);
            }

            return(Json(consistencia, JsonRequestBehavior.AllowGet));
        }
예제 #7
0
        public StatusRequerimento Novo(StatusRequerimento statusRequerimento)
        {
            var consiste = ConsisteNovo(statusRequerimento);

            if (consiste.Inconsistencias.Any())
            {
                throw new ArgumentException(consiste.Inconsistencias.ToString());
            }
            else
            {
                dbStatusRequerimento.Insert(statusRequerimento);
            }


            return(statusRequerimento);
        }
예제 #8
0
        public StatusRequerimento Atualizar(StatusRequerimento statusRequerimento)
        {
            var consiste = ConsisteAtualizar(statusRequerimento);

            if (consiste.Inconsistencias.Any())
            {
                throw new ArgumentException(consiste.Inconsistencias.ToString());
            }
            else
            {
                dbStatusRequerimento.Update(statusRequerimento);
            }


            return(statusRequerimento);
        }
예제 #9
0
        public ConsisteUtils ConsisteAtualizar(StatusRequerimento statusRequerimento)
        {
            var consiste = new ConsisteUtils();

            var pesquisa = dbStatusRequerimento.BuscarPorId(statusRequerimento.Id);

            if (pesquisa == null)
            {
                consiste.Add("Não foi encontrado o registro para atualização", ConsisteUtils.Tipo.Inconsistencia);
            }

            if (pesquisa.CodigoInterno != 0 && (statusRequerimento.Nome != pesquisa.Nome || statusRequerimento.CodigoInterno != pesquisa.CodigoInterno))
            {
                consiste.Add("Status Padrão do sistema não podem ser alterados", ConsisteUtils.Tipo.Inconsistencia);
            }

            return(consiste);
        }
예제 #10
0
        public ConsisteUtils ConsisteExcluir(StatusRequerimento statusRequerimento)
        {
            var consiste = new ConsisteUtils();

            var pesquisa = dbStatusRequerimento.BuscarPorId(statusRequerimento.Id);

            statusRequerimento = pesquisa;

            if (statusRequerimento == null)
            {
                consiste.Add("Não foi encontrado o registro para exclusão", ConsisteUtils.Tipo.Inconsistencia);
            }

            var fluxoStatus = dbFluxoStatus.FiltroPorColuna(nameof(FluxoStatus.StatusAtualId), statusRequerimento.Id.ToString());

            if (fluxoStatus.Any())
            {
                consiste.Add("Não foi possivel excluir o Status, pois o mesmo já se encontra atrelado a um fluxo de status (Fluxos de Status: " + string.Join(" - ", fluxoStatus) + ")", ConsisteUtils.Tipo.Inconsistencia);
            }

            fluxoStatus = dbFluxoStatus.FiltroPorColuna(nameof(FluxoStatus.StatusProximoId), statusRequerimento.Id.ToString());
            if (fluxoStatus.Any())
            {
                consiste.Add("Não foi possivel excluir o Status, pois o mesmo já se encontra atrelado a um fluxo de status (Fluxos de Status: " + string.Join(" - ", fluxoStatus) + ")", ConsisteUtils.Tipo.Inconsistencia);
            }

            var requerimentos = dbRequerimento.FiltroPorColuna("STATUSREQUERIMENTO", statusRequerimento.Id.ToString());

            if (requerimentos.Any())
            {
                consiste.Add("Não foi possivel excluir o Status, pois o mesmo já se encontra atrelado a um requerimento (Requerimento: " + string.Join(" - ", requerimentos) + ")", ConsisteUtils.Tipo.Inconsistencia);
            }

            if (pesquisa.CodigoInterno != 0)
            {
                consiste.Add("Não foi possivel excluir o Status, pois o mesmo é padrão do sistema", ConsisteUtils.Tipo.Inconsistencia);
            }

            return(consiste);
        }
예제 #11
0
        public ActionResult Excluir(StatusRequerimento statusRequerimento)
        {
            var model = new StatusRequerimentoVM();

            try
            {
                StatusRequerimentoServer.Excluir(statusRequerimento);
                model.Consistencia.Add("Registro excluído com sucesso!", ConsisteUtils.Tipo.Sucesso);
            }
            catch (Exception e)
            {
                model.StatusRequerimento = statusRequerimento;
                var consistencia = new ConsisteUtils();
                consistencia.Add(e.Message, ConsisteUtils.Tipo.Inconsistencia);
                model.Consistencia = consistencia;

                return(View("Form", model));
            }


            return(RedirectToAction("Index", "StatusRequerimento"));
        }
예제 #12
0
 public StatusRequerimentoVM()
 {
     StatusRequerimento = new StatusRequerimento();
     Consistencia       = new ConsisteUtils();
 }