public ActionResult ProcessoData(string c)
        {
            if (Session["hashid"] == null)
            {
                return(RedirectToAction("Login", "Home"));
            }
            string _numStr;

            try {
                _numStr = Functions.Decrypt(c);
            } catch {
                return(RedirectToAction("Login", "Home"));
            }

            ProcessoNumero processoNumero = Functions.Split_Processo_Numero(_numStr);
            int            _numero        = processoNumero.Numero;
            int            _ano           = processoNumero.Ano;

            ProcessoViewModel modelt             = Exibe_Tramite2(_numStr);
            Processo_bll      processoRepository = new Processo_bll(_connection);
            ProcessoStruct    _dados             = processoRepository.Dados_Processo(_ano, _numero);

            modelt.Observacao = _dados.Observacao ?? "";
            List <ProcessoEndStruct> ListaEnd = _dados.ListaProcessoEndereco;
            string _end = "";

            foreach (ProcessoEndStruct item in ListaEnd)
            {
                _end += item.NomeLogradouro + ", " + item.Numero.ToString() + "; ";
            }

            modelt.Endereco_Ocorrencia = _end;
            modelt.Numero_Ano          = _numStr;
            return(View(modelt));
        }
        private void Carrega_Grid()
        {
            lblMsg.Text = "";
            Processo_bll processo_Class = new Processo_bll("GTIconnection");

            try {
                _numeroProcesso = gtiCore.Split_Processo_Numero(sNumProc);
                ProcessoStruct _processo = processo_Class.Dados_Processo(_numeroProcesso.Ano, _numeroProcesso.Numero);
                Processo.Text     = sNumProc;
                DataAbertura.Text = Convert.ToDateTime(_processo.DataEntrada).ToString("dd/MM/yyyy");
                Requerente.Text   = _processo.NomeCidadao;
                Assunto.Text      = _processo.Complemento;

                List <TramiteStruct> Lista_Tramite = processo_Class.DadosTramite((short)_numeroProcesso.Ano, _numeroProcesso.Numero, 0);

                DataTable dt = new DataTable();
                dt.Columns.AddRange(new DataColumn[8] {
                    new DataColumn("Seq"), new DataColumn("Local"), new DataColumn("Data"), new DataColumn("Hora"),
                    new DataColumn("Usuario1"), new DataColumn("Despacho"), new DataColumn("Data2"), new DataColumn("Usuario2")
                });

                foreach (TramiteStruct item in Lista_Tramite)
                {
                    dt.Rows.Add(item.Seq, item.CentroCustoNome, item.DataEntrada, item.HoraEntrada, item.Usuario1, item.DespachoNome, item.DataEnvio, item.Usuario2);
                }

                grdMain.DataSource = dt;
                grdMain.DataBind();
            } catch (Exception) {
                Response.Redirect("~/Pages/gtiMenu3.aspx");
            }
        }
        public ActionResult Consulta_Processo(ProcessoViewModel model)
        {
            var    response  = Request["g-recaptcha-response"];
            string secretKey = "6LfRjG0aAAAAACH5nVGFkotzXTQW_V8qpKzUTqZV";
            var    client    = new WebClient();
            var    result    = client.DownloadString(string.Format("https://www.google.com/recaptcha/api/siteverify?secret={0}&response={1}", secretKey, response));
            var    obj       = JObject.Parse(result);
            var    status    = (bool)obj.SelectToken("success");
            string msg       = status ? "Sucesso" : "Falha";

            if (!status)
            {
                ViewBag.Result = "Código Recaptcha inválido.";
                return(View(model));
            }

            ProcessoViewModel processoViewModel = new ProcessoViewModel();
            ProcessoNumero    processoNumero    = Functions.Split_Processo_Numero(model.Numero_Ano);

            processoViewModel.Numero_Ano = model.Numero_Ano;
            processoViewModel.Numero     = processoNumero.Numero;
            processoViewModel.Ano        = processoNumero.Ano;
            processoViewModel.User_Id    = Convert.ToInt32(ViewBag.UserId);

            return(RedirectToAction("Consulta_Processo2", new { Ano = Functions.Encrypt(processoViewModel.Ano.ToString()), Numero = Functions.Encrypt(processoViewModel.Numero.ToString()) }));
        }
示例#4
0
        public ActionResult Processo_trm(string p)
        {
            string _processo;

            if (TempData["p"] == null)
            {
                if (p == null)
                {
                    return(RedirectToAction("sysMenu", "Home"));
                }
                else
                {
                    _processo = Functions.Decrypt(p);
                }
            }
            else
            {
                _processo = Functions.Decrypt(TempData["p"].ToString());
            }

            Processo_bll   processoRepository = new Processo_bll(_connection);
            ProcessoNumero processoNumero     = Functions.Split_Processo_Numero(_processo);
            int            _ano    = processoNumero.Ano;
            int            _numero = processoNumero.Numero;

            if (Request.Cookies["2lG1H*"] == null)
            {
                return(RedirectToAction("Login", "Home"));
            }

            if (_ano == 0)
            {
                RedirectToAction("Login", "Home");
            }

            List <Centrocusto> Lista_CentroCusto = processoRepository.Lista_Local(true, false);

            ViewBag.Lista_CentroCusto = new SelectList(Lista_CentroCusto, "Codigo", "Descricao");

            Processo2ViewModel model  = new Processo2ViewModel();
            ProcessoStruct     _dados = processoRepository.Dados_Processo(processoNumero.Ano, processoNumero.Numero);

            if (_dados == null)
            {
                return(RedirectToAction("sysMenu", "Home"));
            }

            model.Numero_Processo   = _processo;
            model.AnoProcesso       = _ano;
            model.NumProcesso       = _numero;
            model.Data_Entrada      = Convert.ToDateTime(_dados.DataEntrada).ToString("dd/MM/yyyy");
            model.Centro_Custo_Nome = _dados.CentroCustoNome == null ? _dados.NomeCidadao ?? "" : _dados.CentroCustoNome;
            model.Assunto_Codigo    = (int)_dados.CodigoAssunto;
            model.Assunto_Nome      = _dados.Assunto;
            model.Complemento       = _dados.Complemento ?? "";
            return(View(model));
        }
示例#5
0
        public ActionResult Processo_edit()
        {
            if (Request.Cookies["2lG1H*"] == null)
            {
                return(RedirectToAction("Login", "Home"));
            }

            if (TempData["p"] == null)
            {
                return(RedirectToAction("sysMenu", "Home"));
            }

            string _processo = TempData["p"].ToString();

            Processo_bll processoRepository = new Processo_bll(_connection);

            ProcessoNumero processoNumero = Functions.Split_Processo_Numero(_processo);
            int            _ano           = processoNumero.Ano;
            int            _numero        = processoNumero.Numero;

            bool _existe = processoRepository.Existe_Processo(_ano, _numero);

            if (!_existe)
            {
                return(RedirectToAction("sysMenu", "Home"));
            }

            ProcessoStruct _proc = processoRepository.Dados_Processo(_ano, _numero);

            string _assunto = processoRepository.Retorna_Assunto((int)_proc.CodigoAssunto);

            Processo2ViewModel model = new Processo2ViewModel();

            model.NumProcesso     = _numero;
            model.AnoProcesso     = _ano;
            model.Numero_Processo = _numero.ToString() + "-" + Functions.RetornaDvProcesso(_numero) + "/" + _ano.ToString();
            model.Complemento     = _proc.Complemento;
            model.Assunto_Codigo  = (int)_proc.CodigoAssunto;
            model.Assunto_Nome    = _assunto;
            model.Observacao      = _proc.Observacao;
            if (_proc.Interno)
            {
                model.Centro_Custo_Codigo = (int)_proc.CentroCusto;
                model.Centro_Custo_Nome   = _proc.CentroCustoNome;
            }
            else
            {
                model.Centro_Custo_Codigo = (int)_proc.CodigoCidadao;
                model.Centro_Custo_Nome   = _proc.NomeCidadao;
            }
            model.Interno         = _proc.Interno ? "Sim" : "Não";
            model.Fisico_Nome     = _proc.Fisico ? "Sim" : "Não";
            model.Lista_Documento = processoRepository.Lista_Processo_Documento(_ano, _numero);
            model.Lista_Endereco  = processoRepository.Lista_Processo_Endereco((short)_ano, _numero);

            return(View(model));
        }
        protected void ConsultarButton_Click(object sender, EventArgs e)
        {
            string sNumProc = txtProcesso.Text.Trim();

            try {
                if (sNumProc.Length < 8)
                {
                    lblMsg.Text = "Número de processo inválido!";
                }
                else
                {
                    if (sNumProc.IndexOf("-") == -1)
                    {
                        lblMsg.Text = "Número de processo inválido!";
                    }
                    else
                    {
                        if (sNumProc.IndexOf("/") == -1)
                        {
                            lblMsg.Text = "Número de processo inválido!";
                        }
                        else
                        {
                            ProcessoNumero _processo = new ProcessoNumero();
                            _processo = gtiCore.Split_Processo_Numero(sNumProc);
                            if (_processo.Ano < 1900 || _processo.Ano > 2030)
                            {
                                lblMsg.Text = "Número de processo inválido!";
                            }
                            else
                            {
                                if (_processo.Numero == 0)
                                {
                                    lblMsg.Text = "Número de processo inválido!";
                                }
                                else
                                {
                                    Processo_bll processo_Class = new Processo_bll("GTIconnection");
                                    bool         _existe        = processo_Class.Existe_Processo(_processo.Ano, _processo.Numero);
                                    if (!_existe)
                                    {
                                        lblMsg.Text = "Processo não cadastrado!";
                                    }
                                    else
                                    {
                                        Response.Redirect("~/Pages/Tramite_Processo2.aspx?a=" + HttpUtility.UrlEncode(gtiCore.Encrypt(sNumProc)));
                                    }
                                }
                            }
                        }
                    }
                }
            } catch (Exception) {
                //    throw;
            }
        }
        private ProcessoViewModel Exibe_Tramite(string Numero_Ano, int Seq = 0)
        {
            Processo_bll      protocoloRepository = new Processo_bll(_connection);
            ProcessoViewModel processoViewModel   = new ProcessoViewModel();
            //int _userId = Functions.pUserId;
            int _userId = Convert.ToInt32(Session["hashid"]);

            if (_userId > 0)
            {
                List <UsuariocentroCusto> _listaCC = protocoloRepository.ListaCentrocustoUsuario(_userId);
                string Lista_CC = "";
                foreach (UsuariocentroCusto item in _listaCC)
                {
                    Lista_CC += item.Codigo + ",";
                }
                Lista_CC = Lista_CC.Substring(0, Lista_CC.Length - 1);


                List <Centrocusto> Lista_CentroCusto = protocoloRepository.Lista_Local(true, false);
                ViewBag.Lista_CentroCusto = new SelectList(Lista_CentroCusto, "Codigo", "Descricao");

                ProcessoNumero processoNumero = Functions.Split_Processo_Numero(Numero_Ano);
                ProcessoStruct _dados         = protocoloRepository.Dados_Processo(processoNumero.Ano, processoNumero.Numero);
                if (_dados != null)
                {
                    List <TramiteStruct> Lista_Tramite = protocoloRepository.DadosTramite((short)processoNumero.Ano, processoNumero.Numero, (int)_dados.CodigoAssunto);

                    if (Seq > 0)
                    {
                        Lista_Tramite = Lista_Tramite.Where(m => m.Seq == Seq).ToList();
                    }
                    TramiteStruct TramiteAtual = protocoloRepository.Dados_Tramite(processoNumero.Ano, processoNumero.Numero, Seq);


                    processoViewModel.Despacho_Codigo = TramiteAtual.DespachoCodigo;
                    processoViewModel.Ano             = processoNumero.Ano;
                    processoViewModel.Numero          = processoNumero.Numero;
                    processoViewModel.User_Id         = Convert.ToInt32(ViewBag.UserId);
                    processoViewModel.Data_Processo   = Convert.ToDateTime(_dados.DataEntrada).ToString("dd/MM/yyyy");
                    processoViewModel.Requerente      = _dados.NomeCidadao;
                    processoViewModel.Assunto_Nome    = _dados.Assunto;
                    processoViewModel.Lista_Tramite   = Lista_Tramite;
                    processoViewModel.Lista_CC        = Lista_CC;
                    processoViewModel.Numero_Ano      = Numero_Ano;
                    processoViewModel.ObsGeral        = Lista_Tramite[0].ObsGeral;
                    processoViewModel.ObsInterna      = Lista_Tramite[0].ObsInterna;
                }
                else
                {
                    ViewBag.Result = "Processo não cadastrado.";
                }
            }
            return(processoViewModel);
        }
示例#8
0
        public JsonResult Carrega_Tramite(string processo, int assunto)
        {
            int _user = Convert.ToInt32(Functions.Decrypt(Request.Cookies["2uC*"].Value));

            Processo_bll         processoRepository = new Processo_bll(_connection);
            ProcessoNumero       processoNumero     = Functions.Split_Processo_Numero(processo);
            List <TramiteStruct> Lista_Tramite      = processoRepository.DadosTramite((short)processoNumero.Ano, processoNumero.Numero, assunto);

            return(new JsonResult {
                Data = Lista_Tramite, JsonRequestBehavior = JsonRequestBehavior.AllowGet
            });
        }
示例#9
0
        public static ProcessoNumero Split_Processo_Numero(string Numero)
        {
            bool res = int.TryParse(Numero.Substring(Numero.IndexOf("-") + 1, 1), out int _dv);

            res = int.TryParse(Numero.Substring(0, Numero.IndexOf("-")), out int _numero);
            res = int.TryParse((Numero.Substring(Numero.Length - 4)), out int _ano);

            ProcessoNumero _reg = new ProcessoNumero {
                Ano    = _ano,
                Numero = _numero,
                Dv     = _dv
            };

            return(_reg);
        }
        public ActionResult Tramite_Processo(ProcessoViewModel model)
        {
            if (!Captcha.ValidateCaptchaCode(model.CaptchaCode, Session["CaptchaCode"].ToString()))
            {
                ViewBag.Result = "Código de verificação inválido.";
                return(View(model));
            }

            ProcessoViewModel processoViewModel = new ProcessoViewModel();
            ProcessoNumero    processoNumero    = Functions.Split_Processo_Numero(model.Numero_Ano);

            processoViewModel.Numero_Ano = model.Numero_Ano;
            processoViewModel.Numero     = processoNumero.Numero;
            processoViewModel.Ano        = processoNumero.Ano;
            processoViewModel.User_Id    = Convert.ToInt32(ViewBag.UserId);

            return(RedirectToAction("Tramite_Processo2", new { Ano = Functions.Encrypt(processoViewModel.Ano.ToString()), Numero = Functions.Encrypt(processoViewModel.Numero.ToString()) }));
        }
示例#11
0
        public static ProcessoNumero Split_Processo_Numero(string Numero)
        {
            int _dv = 0, _numero = 0, _ano = 0;

            try {
                _dv     = Convert.ToInt32(Numero.Substring(Numero.IndexOf("-") + 1, 1));
                _numero = Convert.ToInt32(Functions.RetornaNumero(Numero.Substring(0, Numero.IndexOf("-"))));
                _ano    = Convert.ToInt32((Numero.Substring(Numero.Length - 4)));
            } catch  {
            }

            ProcessoNumero _reg = new ProcessoNumero {
                Ano    = _ano,
                Numero = _numero,
                Dv     = _dv
            };

            return(_reg);
        }
        public ActionResult ProcessoqryC(ProcessoViewModel model)
        {
            if (Session["hashid"] == null)
            {
                return(RedirectToAction("Login", "Home"));
            }
            Processo_bll processoRepository = new Processo_bll(_connection);

            bool _filterN = false;

            if (!string.IsNullOrEmpty(model.Numero_Ano))
            {
                _filterN = true;
            }

            int _ano = 0, _numero = 0;
            List <ProcessoLista> _lista = new List <ProcessoLista>();

            model.Lista_Processo = _lista;
            if (_filterN)
            {
                ProcessoNumero processoNumero = Functions.Split_Processo_Numero(model.Numero_Ano);
                string         _numStr        = model.Numero_Ano;
                _numero = processoNumero.Numero;
                _ano    = processoNumero.Ano;

                short _dv     = processoRepository.ExtractDvProcesso(_numStr);
                short _realdv = Convert.ToInt16(processoRepository.DvProcesso(_numero));
                if (_dv != _realdv)
                {
                    ViewBag.Result = "Nº de processo inválido.";
                    return(View(model));
                }

                bool _existe = processoRepository.Existe_Processo(_ano, _numero);
                if (!_existe)
                {
                    ViewBag.Result = "Nº de processo não cadastrado.";
                    return(View(model));
                }
            }

            string _nome                = model.Requerente;
            string _endereco            = model.Endereco;

            if (!string.IsNullOrEmpty(_nome))
            {
                if (_nome.Length < 5)
                {
                    ViewBag.Result = "Digite ao menos 5 caracteres do nome.";
                    return(View(model));
                }
            }
            if (!string.IsNullOrEmpty(_endereco))
            {
                if (_endereco.Length < 5)
                {
                    ViewBag.Result = "Digite ao menos 5 caracteres do endereco.";
                    return(View(model));
                }
            }

            List <ProcessoStruct> ListaProcesso = processoRepository.Lista_Processos(_ano, _numero, model.Requerente, model.Endereco, model.EnderecoNumero);

            if (ListaProcesso.Count == 0)
            {
                ViewBag.Result = "Não foi localizado nenhum processo com este requerente.";
                return(View(model));
            }

            foreach (ProcessoStruct item in ListaProcesso)
            {
                ProcessoLista reg = new ProcessoLista()
                {
                    AnoNumero  = item.Numero.ToString("00000") + "-" + Functions.RetornaDvProcesso(item.Numero).ToString() + "/" + item.Ano.ToString(),
                    Requerente = Functions.TruncateTo(item.NomeCidadao, 30),
                    Assunto    = Functions.TruncateTo(item.Assunto, 30),
                    Endereco   = string.IsNullOrEmpty(item.LogradouroNome) ? "" : item.LogradouroNome
                };
                if (reg.Endereco != "")
                {
                    reg.Endereco += ", " + item.LogradouroNumero.ToString();
                    reg.Endereco  = Functions.TruncateTo(reg.Endereco, 32);
                }
                _lista.Add(reg);
            }

            model.Lista_Processo = _lista;
            return(View(model));
        }
示例#13
0
        public ActionResult Processo_editx(List <Processo2ViewModel> dados)
        {
            if (Request.Cookies["2uC*"] == null || Request.Cookies["2fN*"].Value == null)
            {
                return(RedirectToAction("Login", "Home"));
            }

            string _numero_processo = dados[0].Numero_Processo;

            Processo_bll   processoRepository = new Processo_bll(_connection);
            ProcessoNumero processoNumero     = Functions.Split_Processo_Numero(_numero_processo);
            short          _ano    = Convert.ToInt16(processoNumero.Ano);
            int            _numero = processoNumero.Numero;

            bool _existe = processoRepository.Existe_Processo(_ano, _numero);

            if (!_existe)
            {
                return(RedirectToAction("SysMenu", "Home"));
            }

            Processogti reg = new Processogti()
            {
                Ano         = _ano,
                Numero      = _numero,
                Observacao  = dados[0].Observacao,
                Complemento = dados[0].Complemento,
            };

            Exception ex = processoRepository.Alterar_Processo_Web(reg);

            if (dados[0].Lista_Endereco != null)
            {
                List <Processoend> _listaE = new List <Processoend>();
                foreach (ProcessoEndStruct end in dados[0].Lista_Endereco)
                {
                    Processoend regE = new Processoend()
                    {
                        Ano         = _ano,
                        Numprocesso = _numero,
                        Codlogr     = Convert.ToInt16(end.CodigoLogradouro),
                        Numero      = end.Numero
                    };
                    _listaE.Add(regE);
                }
                ex = processoRepository.Incluir_Processo_Endereco(_listaE, _ano, _numero);
            }


            if (dados[0].Lista_Documento != null)
            {
                List <Processodoc> _listaD = new List <Processodoc>();
                foreach (ProcessoDocStruct doc in dados[0].Lista_Documento)
                {
                    Processodoc regD = new Processodoc()
                    {
                        Ano    = _ano,
                        Numero = _numero,
                        Coddoc = (short)doc.CodigoDocumento
                    };
                    if (Functions.IsDate(doc.DataEntrega))
                    {
                        regD.Data = Convert.ToDateTime(doc.DataEntrega);
                    }

                    _listaD.Add(regD);
                }
                ex = processoRepository.Incluir_Processo_Documento(_listaD, _ano, _numero);
            }

            //string _p = Functions.Encrypt(_numero_processo);
            //TempData["p"] = _p;
            //return RedirectToAction("Processo_vw");
            return(Json(Url.Action("Processo_vw", "Processo", new { p = Functions.Encrypt(_numero_processo) })));
        }
示例#14
0
        public ActionResult Processo_qryx(List <Processo2ViewModel> dados)
        {
            if (Request.Cookies["2uC*"] == null || Request.Cookies["2fN*"].Value == null)
            {
                return(RedirectToAction("Login", "Home"));
            }

            ProcessoFilter _filter = new ProcessoFilter()
            {
            };

            string _numero_processo = "";
            int    _anoProc = 0, _numProc = 0;
            List <Processo2ViewModel> Lista_Proc = new List <Processo2ViewModel>();

            if (!string.IsNullOrEmpty(dados[0].Numero_Processo))
            {
                _numero_processo = dados[0].Numero_Processo;
            }
            int    _endereco_codigo = dados[0].Endereco_Codigo;
            int    _assunto_codigo  = dados[0].Assunto_Codigo;;
            int    _exercicio       = dados[0].AnoProcesso;
            string _data_entrada    = dados[0].Data_Entrada;
            int    _endereco_numero = dados[0].Endereco_Numero;
            int    _centro_custo    = dados[0].Centro_Custo_Codigo;
            bool   _interno         = dados[0].Interno == "S" ? true : false;

            Processo_bll processoRepository = new Processo_bll(_connection);

            if (_numero_processo != "")
            {
                ProcessoNumero processoNumero = Functions.Split_Processo_Numero(_numero_processo);
                _anoProc = processoNumero.Ano;
                _numProc = processoNumero.Numero;
                int _dv = Functions.RetornaDvProcesso(_numProc);
                if (_dv != processoNumero.Dv)
                {
                    Processo2ViewModel reg = new Processo2ViewModel()
                    {
                        Erro = "Digito verificador inválido!"
                    };
                    Lista_Proc.Add(reg);
                    return(new JsonResult {
                        Data = Lista_Proc, JsonRequestBehavior = JsonRequestBehavior.AllowGet
                    });
                }
                _filter.Ano    = _anoProc;
                _filter.Numero = _numProc;
            }

            if (Functions.IsDate(_data_entrada))
            {
                _filter.DataEntrada = Convert.ToDateTime(_data_entrada);
            }

            if (_assunto_codigo > 0)
            {
                _filter.AssuntoCodigo = _assunto_codigo;
            }
            if (_exercicio > 0)
            {
                _filter.Ano = _exercicio;
            }
            if (_endereco_codigo > 0)
            {
                _filter.CodLogradouro = _endereco_codigo;
                _filter.NumEnd        = _endereco_numero;
            }

            if (_centro_custo > 0)
            {
                _filter.Interno    = _interno;
                _filter.Requerente = _centro_custo;
            }
            else
            {
                _filter.Requerente = 0;
            }

            if (_numero_processo == "" && !Functions.IsDate(_data_entrada) && _exercicio == 0)
            {
                Processo2ViewModel reg = new Processo2ViewModel()
                {
                    Erro = "Selecione um exercício válido!"
                };
                Lista_Proc.Add(reg);
                return(new JsonResult {
                    Data = Lista_Proc, JsonRequestBehavior = JsonRequestBehavior.AllowGet
                });
            }

            if (_numero_processo == "" && !Functions.IsDate(_data_entrada) && _assunto_codigo == 0 && _endereco_codigo == 0 && _centro_custo == 0)
            {
                Processo2ViewModel reg = new Processo2ViewModel()
                {
                    Erro = "Selecione algum critério!"
                };
                Lista_Proc.Add(reg);
                return(new JsonResult {
                    Data = Lista_Proc, JsonRequestBehavior = JsonRequestBehavior.AllowGet
                });
            }

            List <ProcessoStruct> Lista = processoRepository.Lista_Processos_Web(_filter);

            foreach (ProcessoStruct item in Lista)
            {
                Processo2ViewModel reg = new Processo2ViewModel()
                {
                    Numero_Processo = item.Numero.ToString("00000") + "-" + Functions.RetornaDvProcesso(item.Numero) + "/" + item.Ano.ToString(),
                    Data_Entrada    = Convert.ToDateTime(item.DataEntrada).ToString("dd/MM/yyyy"),
                    Assunto_Nome    = Functions.TruncateTo(item.Assunto, 35),
                    Erro            = ""
                };
                if (!string.IsNullOrEmpty(item.CentroCustoNome))
                {
                    reg.Centro_Custo_Nome = item.CentroCustoNome ?? "";
                }
                else
                {
                    reg.Centro_Custo_Nome = item.NomeCidadao ?? "";
                }
                reg.Centro_Custo_Nome = Functions.TruncateTo(reg.Centro_Custo_Nome, 35);

                bool _existe = false;//Avoid duplicate regs
                foreach (Processo2ViewModel t in Lista_Proc)
                {
                    if (t.Numero_Processo == reg.Numero_Processo)
                    {
                        _existe = true;
                        break;
                    }
                }
                if (!_existe)
                {
                    Lista_Proc.Add(reg);
                }
            }
            ;

            return(new JsonResult {
                Data = Lista_Proc, JsonRequestBehavior = JsonRequestBehavior.AllowGet
            });
        }