示例#1
0
        public bool Salvar(Fiscalizacao entidade)
        {
            try
            {
                if (_validar.Salvar(entidade))
                {
                    entidade.Autuante.Id = User.EtramiteIdentity.FuncionarioId;
                    eHistoricoAcao acao = entidade.Id > 0 ? eHistoricoAcao.atualizar : eHistoricoAcao.criar;

                    GerenciadorTransacao.ObterIDAtual();

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

                        _da.Salvar(entidade, bancoDeDados);

                        #region Local da Infração

                        if (entidade.LocalInfracao.Id < 1)
                        {
                            entidade.LocalInfracao.Id = _daLocalInfracao.ObterID(entidade.Id);
                        }

                        entidade.LocalInfracao.FiscalizacaoId = entidade.Id;

                        //se não foi usado o filtro de local, as informações de local são salvas a partir do empreendimento
                        if (entidade.LocalInfracao.EmpreendimentoId != null)
                        {
                            Empreendimento empreendimento = _daEmpreendimento.Obter(entidade.LocalInfracao.EmpreendimentoId.Value);

                            entidade.LocalInfracao.LatNorthing = entidade.LocalInfracao.LatNorthing ?? empreendimento.Coordenada.NorthingUtm.ToString();
                            entidade.LocalInfracao.LonEasting  = entidade.LocalInfracao.LonEasting ?? empreendimento.Coordenada.EastingUtm.ToString();
                            entidade.LocalInfracao.MunicipioId = (entidade.LocalInfracao.MunicipioId != null && entidade.LocalInfracao.MunicipioId > 0) ? entidade.LocalInfracao.MunicipioId : empreendimento.Enderecos[0].MunicipioId;
                            entidade.LocalInfracao.Local       = entidade.LocalInfracao.Local ?? empreendimento.Denominador;
                        }

                        _daLocalInfracao.Salvar(entidade.LocalInfracao, bancoDeDados);

                        #endregion

                        _da.GerarHistorico(entidade.Id, acao, bancoDeDados);

                        _da.GerarConsulta(entidade.Id, bancoDeDados);

                        Validacao.Add(Mensagem.Fiscalizacao.Salvar(entidade.Id.ToString()));

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

            return(Validacao.EhValido);
        }
示例#2
0
        public bool Salvar(Fiscalizacao entidade)
        {
            try
            {
                if (_validar.Salvar(entidade))
                {
                    entidade.Autuante.Id = User.EtramiteIdentity.FuncionarioId;
                    eHistoricoAcao acao = entidade.Id > 0 ? eHistoricoAcao.atualizar : eHistoricoAcao.criar;

                    GerenciadorTransacao.ObterIDAtual();

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

                        _da.Salvar(entidade, bancoDeDados);

                        #region Local da Infração

                        if (entidade.LocalInfracao.Id < 1)
                        {
                            entidade.LocalInfracao.Id = _daLocalInfracao.ObterID(entidade.Id);
                        }

                        entidade.LocalInfracao.FiscalizacaoId = entidade.Id;
                        _daLocalInfracao.Salvar(entidade.LocalInfracao, bancoDeDados);

                        #endregion

                        _da.GerarHistorico(entidade.Id, acao, bancoDeDados);

                        _da.GerarConsulta(entidade.Id, bancoDeDados);

                        Validacao.Add(Mensagem.Fiscalizacao.Salvar(entidade.Id.ToString()));

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

            return(Validacao.EhValido);
        }