public Mensagem VerificarLocalizacaoEmpreendimento(string easting, string northing, int estadoID, int municipioID)
        {
            RequestJson requestJson             = new RequestJson();
            ResponseJsonData <dynamic> resposta = new ResponseJsonData <dynamic>();
            Municipio municipioCoordenada       = new Municipio();

            resposta = requestJson.Executar <dynamic>(_configCoordenada.Obter <String>(ConfiguracaoCoordenada.KeyUrlObterMunicipioCoordenada) + "?easting=" + easting + "&northing=" + northing);

            if (estadoID != 8 && !Convert.ToBoolean(resposta.Data["EstaNoEstado"]))
            {
                return(new Mensagem());
            }

            if (Convert.ToBoolean(resposta.Data["EstaNoEstado"]))
            {
                municipioCoordenada = new ListaValoresDa().ObterMunicipio(Convert.ToInt32(resposta.Data["Municipio"]["IBGE"]));
            }

            if (municipioCoordenada.Id != municipioID)
            {
                return(Msg.MunicipioEmpreendimentoDiferenteResponsavel);
            }

            if (estadoID != 8 && Convert.ToBoolean(resposta.Data["EstaNoEstado"]))
            {
                return(Msg.MunicipioEmpreendimentoDiferenteResponsavel);
            }

            if (estadoID == 8 && !Convert.ToBoolean(resposta.Data["EstaNoEstado"]))
            {
                return(Msg.MunicipioEmpreendimentoDiferenteResponsavel);
            }

            return(new Mensagem());
        }
Beispiel #2
0
        public List <Lista> obterCodigoReceita(int?codigoRecFisc = null)
        {
            ListaValoresDa lv = new ListaValoresDa();
            List <Lista>   cr = null;

            try
            {
                cr = lv.ObterCodigoReceita(codigoRecFisc);
            }catch (Exception exc)
            {
                Validacao.AddErro(exc);
            }
            return(cr);
        }
        public static IEnumerable <int> ObterCodigo(IEnumerable <int> ids)
        {
            ListaValoresDa daLista    = new ListaValoresDa();
            List <int>     lstRetorno = new List <int>();

            using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia())
            {
                foreach (var item in ids)
                {
                    lstRetorno.Add(daLista.ObterAtividadeCodigo(item, bancoDeDados));
                }
            }
            return(lstRetorno);
        }
        public static int ObterCodigo(int id)
        {
            ListaValoresDa daLista = new ListaValoresDa();

            return(daLista.ObterAtividadeCodigo(id));
        }
        public static int ObterId(int codigo)
        {
            ListaValoresDa daLista = new ListaValoresDa();

            return(daLista.ObterAtividadeId(codigo));
        }
        public bool Salvar(UnidadeProducao caracterizacao)
        {
            try
            {
                if (!_validar.Salvar(caracterizacao))
                {
                    return(Validacao.EhValido);
                }

                #region Configurar Salvar

                Municipio municipio = _da.ObterMunicipioPropriedade(caracterizacao.Empreendimento.Id);

                if (!caracterizacao.PossuiCodigoPropriedade)
                {
                    if (caracterizacao.Id < 1)
                    {
                        int sequencial = _da.ObterSequenciaCodigoPropriedade();

                        caracterizacao.CodigoPropriedade = UnidadeProducaoGenerator.GerarCodigoPropriedade(municipio.Ibge, sequencial);
                    }
                    else
                    {
                        caracterizacao.CodigoPropriedade = ObterPorEmpreendimento(caracterizacao.Empreendimento.Id, true).CodigoPropriedade;
                    }
                }

                RequestJson requestJson                        = new RequestJson();
                ResponseJsonData <dynamic> resposta            = new ResponseJsonData <dynamic>();
                UnidadeProducao            caracterizacaoBanco = ObterPorEmpreendimento(caracterizacao.Empreendimento.Id);

                int ultimoCodigoUP = _da.ObterUltimoCodigoUP(caracterizacao.Empreendimento.Id);
                foreach (long item in caracterizacao.UnidadesProducao.Where(x => x.PossuiCodigoUP).Select(x => x.CodigoUP))
                {
                    int aux = Convert.ToInt32(item.ToString().Substring(14));
                    if (aux > ultimoCodigoUP)
                    {
                        ultimoCodigoUP = aux;
                    }
                }

                foreach (UnidadeProducaoItem item in caracterizacao.UnidadesProducao)
                {
                    int codigoIbge = 0;
                    resposta = requestJson.Executar <dynamic>(_configCoord.Obter <String>(ConfiguracaoCoordenada.KeyUrlObterMunicipioCoordenada) + "?easting=" + item.Coordenada.EastingUtm + "&northing=" + item.Coordenada.NorthingUtm);

                    if (resposta.Erros != null && resposta.Erros.Count > 0)
                    {
                        Validacao.Erros.AddRange(resposta.Erros);
                        return(Validacao.EhValido);
                    }

                    if (resposta.Data == null)
                    {
                        throw new Exception(Mensagem.Empreendimento.ErroConexaoMunicipioGeobases.ToString());
                    }

                    var objJson = resposta.Data;
                    if (objJson["EstaNoEstado"] && (objJson["Municipio"] == null || Convert.ToInt32(objJson["Municipio"]["IBGE"] ?? 0) == 0))
                    {
                        Validacao.Add(Mensagem.Mapas.MunicipioSemRetorno);
                    }

                    if (!Validacao.EhValido)
                    {
                        return(Validacao.EhValido);
                    }

                    if (objJson["Municipio"] != null)
                    {
                        codigoIbge = Convert.ToInt32(objJson["Municipio"]["IBGE"] ?? 0);
                    }

                    ListaValoresDa listaValoresDa = new ListaValoresDa();
                    item.Municipio = listaValoresDa.ObterMunicipio(codigoIbge);

                    if (!item.PossuiCodigoUP)
                    {
                        item.AnoAbertura = DateTime.Today.Year.ToString().Substring(2);

                        if (item.Id < 1)
                        {
                            ultimoCodigoUP++;

                            item.CodigoUP = UnidadeProducaoGenerator.GerarCodigoUnidadeProducao(
                                item.Municipio.Ibge
                                , caracterizacao.CodigoPropriedade
                                , item.AnoAbertura
                                , ultimoCodigoUP
                                );
                        }
                        else
                        {
                            item.CodigoUP = caracterizacaoBanco.UnidadesProducao.Single(x => x.Id == item.Id).CodigoUP;
                        }
                    }
                    else
                    {
                        item.AnoAbertura = item.CodigoUP.ToString().Substring(11, 2);
                    }

                    foreach (var aux in item.ResponsaveisTecnicos)
                    {
                        aux.CFONumero = aux.CFONumero.Split('-').GetValue(0).ToString();
                    }
                }

                #endregion

                if (caracterizacao.UnidadesProducao.Any(x => caracterizacao.UnidadesProducao.Count(y => y.CodigoUP == x.CodigoUP) > 1))
                {
                    Validacao.Add(Mensagem.UnidadeProducao.UnidadeProducaoItemIncorreto);
                    return(false);
                }

                foreach (var item in caracterizacao.UnidadesProducao)
                {
                    if (!UnidadeProducaoGenerator.CodigoUpHasCodigoPropriedade(caracterizacao.CodigoPropriedade, item.CodigoUP))
                    {
                        Validacao.Add(Mensagem.UnidadeProducao.CodigoUPNaoContemCodPropriedade(item.CodigoUP));
                        return(false);
                    }
                }

                GerenciadorTransacao.ObterIDAtual();

                using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia())
                {
                    bancoDeDados.IniciarTransacao();

                    _da.Salvar(caracterizacao, bancoDeDados);

                    Validacao.Add(Mensagem.UnidadeProducao.SalvoSucesso);

                    bancoDeDados.Commit();
                }
            }
            catch (Exception e)
            {
                Validacao.AddErro(e);
            }

            return(Validacao.EhValido);
        }
        public ActionResult Salvar(LocalizarVM localizarVm)
        {
            #region Configurar Estado e Municipio

            Municipio                  municipio     = null;
            List <Estado>              lstEstados    = new List <Estado>();
            List <Municipio>           lstMunicipios = new List <Municipio>();
            ResponseJsonData <dynamic> resposta      = new ResponseJsonData <dynamic>();
            resposta = _bus.ObterEstadosMunicipiosPorCoordenada(localizarVm.Filtros.Coordenada.EastingUtmTexto, localizarVm.Filtros.Coordenada.NorthingUtmTexto);

            var objJson    = resposta.Data;
            int codigoIbge = 0;
            if (objJson["Municipio"] != null)
            {
                codigoIbge = Convert.ToInt32(objJson["Municipio"]["IBGE"] ?? 0);
            }

            ListaValoresDa _da = new ListaValoresDa();
            municipio = _da.ObterMunicipio(codigoIbge);

            if (municipio.Estado.Sigla != ViewModelHelper.EstadoDefaultSigla())
            {
                lstEstados    = _busLista.Estados.Where(x => x.Texto != ViewModelHelper.EstadoDefaultSigla()).ToList();
                lstMunicipios = new List <Municipio>();
            }
            else
            {
                lstEstados    = _busLista.Estados;
                lstMunicipios = _busLista.Municipios(municipio.Estado.Id);

                localizarVm.Filtros.EstadoId    = municipio.Estado.Id;
                localizarVm.Filtros.MunicipioId = municipio.Id;
            }

            #endregion

            SalvarVM vm = new SalvarVM(lstEstados, lstMunicipios, lstMunicipios, _busLista.Segmentos, _busLista.TiposCoordenada,
                                       _busLista.Datuns, _busLista.Fusos, _busLista.Hemisferios, _busLista.TiposResponsavel, _busLista.LocalColetaPonto, _busLista.FormaColetaPonto,
                                       localizarVm.Filtros.EstadoId, localizarVm.Filtros.MunicipioId, 0, 0);

            vm.SetLocalizarVm(localizarVm.Filtros);
            vm.SetCoordenada();
            PreencherSalvar(vm);

            if (vm.Empreendimento.Responsaveis != null && vm.Empreendimento.Responsaveis.Count > 0)
            {
                vm.Responsaveis = ViewModelHelper.CriarSelectList(ObterResponsaveisList(vm.Empreendimento.Responsaveis), true);
            }

            if (vm.Empreendimento.Enderecos.Count == 0)
            {
                vm.Empreendimento.Enderecos.Add(new Endereco());
                vm.Empreendimento.Enderecos.Add(new Endereco());
            }
            else if (vm.Empreendimento.Enderecos.Count == 1)
            {
                vm.Empreendimento.Enderecos.Add(new Endereco());
            }

            if (Request.IsAjaxRequest())
            {
                vm.IsAjaxRequest = true;
                return(PartialView("Salvar", vm));
            }
            else
            {
                return(View("Salvar", vm));
            }
        }
Beispiel #8
0
        public JsonResult ObterEstadosMunicipiosPorCoordenada(String easting, String northing)
        {
            //CrossDomain case
            RequestJson requestJson             = new RequestJson();
            ResponseJsonData <dynamic> resposta = new ResponseJsonData <dynamic>();
            List <Estado>    lstEstados         = new List <Estado>();
            List <Municipio> lstMunicipios      = new List <Municipio>();
            Municipio        municipio          = null;

            try
            {
                resposta = requestJson.Executar <dynamic>(_configCoord.Obter <String>(ConfiguracaoCoordenada.KeyUrlObterMunicipioCoordenada) + "?easting=" + easting + "&northing=" + northing);

                if (resposta.Erros != null && resposta.Erros.Count > 0)
                {
                    Validacao.Erros.AddRange(resposta.Erros);
                    return(Json(new { Msg = Validacao.Erros }, JsonRequestBehavior.AllowGet));
                }

                var objJson = resposta.Data;
                if (objJson["EstaNoEstado"] && (objJson["Municipio"] == null || Convert.ToInt32(objJson["Municipio"]["IBGE"] ?? 0) == 0))
                {
                    Validacao.Add(Mensagem.Mapas.MunicipioSemRetorno);
                }

                if (!Validacao.EhValido)
                {
                    return(Json(new { Msg = Validacao.Erros }, JsonRequestBehavior.AllowGet));
                }

                int codigoIbge = 0;
                if (objJson["Municipio"] != null)
                {
                    codigoIbge = Convert.ToInt32(objJson["Municipio"]["IBGE"] ?? 0);
                }

                ListaValoresDa _da = new ListaValoresDa();
                municipio = _da.ObterMunicipio(codigoIbge);

                if (municipio.Estado.Sigla != EstadoDefault)
                {
                    lstEstados    = Estados.Where(x => x.Texto != EstadoDefault).ToList();
                    lstMunicipios = new List <Municipio>();
                }
                else
                {
                    lstEstados    = Estados;
                    lstMunicipios = _configEnd.Obter <Dictionary <int, List <Municipio> > >(ConfiguracaoEndereco.KeyMunicipios)[municipio.Estado.Id];
                }
            }
            catch (Exception exc)
            {
                Validacao.AddErro(exc);
            }

            return(Json(new
            {
                @Msg = Validacao.Erros,
                @Estados = lstEstados,
                @Municipios = lstMunicipios,
                @Municipio = municipio
            }, JsonRequestBehavior.AllowGet));
        }