public Enquadramento Obter(int fiscalizacaoId, BancoDeDados banco = null)
        {
            Enquadramento entidade = null;

            try
            {
                entidade = _da.Obter(fiscalizacaoId);

                if (entidade.Id <= 0)
                {
                    entidade.Artigos.Add(new Artigo()
                    {
                        Identificador = Guid.NewGuid().ToString()
                    });
                    entidade.Artigos.Add(new Artigo()
                    {
                        Identificador = Guid.NewGuid().ToString()
                    });
                    entidade.Artigos.Add(new Artigo()
                    {
                        Identificador = Guid.NewGuid().ToString()
                    });
                }
            }
            catch (Exception exc)
            {
                Validacao.AddErro(exc);
            }

            return(entidade);
        }
        public bool Salvar(Enquadramento entidade)
        {
            try
            {
                if (_validar.Salvar(entidade))
                {
                    if (entidade.Id < 1)
                    {
                        entidade.Id = _da.ObterID(entidade.FiscalizacaoId);
                    }

                    GerenciadorTransacao.ObterIDAtual();

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

                        _da.Salvar(entidade, bancoDeDados);

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

            return(Validacao.EhValido);
        }
Exemple #3
0
        internal Enquadramento Criar(Enquadramento enquadramento, BancoDeDados banco = null)
        {
            using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco))
            {
                #region Enquadramento

                bancoDeDados.IniciarTransacao();

                Comando comando = bancoDeDados.CriarComando(@"insert into {0}tab_fisc_enquadramento e (id, fiscalizacao, tid) 
															values({0}seq_tab_fisc_enquadramento.nextval, :fiscalizacao, :tid) 
															returning e.id into :id"                                                            , EsquemaBanco);

                comando.AdicionarParametroEntrada("fiscalizacao", enquadramento.FiscalizacaoId, DbType.Int32);
                comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual());
                comando.AdicionarParametroSaida("id", DbType.Int32);

                bancoDeDados.ExecutarNonQuery(comando);

                enquadramento.Id = Convert.ToInt32(comando.ObterValorParametro("id"));

                #region Artigos

                if (enquadramento.Artigos != null && enquadramento.Artigos.Count > 0)
                {
                    foreach (Artigo item in enquadramento.Artigos)
                    {
                        comando = bancoDeDados.CriarComando(@"insert into {0}tab_fisc_enquadr_artig e
															(id, enquadramento_id, artigo, artigo_paragrafo, combinado_artigo, combinado_artigo_paragrafo, da_do, tid)
															values({0}seq_tab_fisc_enquadr_artig.nextval, :enquadramento_id, :artigo, :artigo_paragrafo, :combinado_artigo, 
															:combinado_artigo_paragrafo, :da_do, :tid) returning e.id into :id"                                                            , EsquemaBanco);

                        comando.AdicionarParametroEntrada("enquadramento_id", enquadramento.Id, DbType.Int32);
                        comando.AdicionarParametroEntrada("artigo", item.ArtigoTexto, DbType.String);
                        comando.AdicionarParametroEntrada("artigo_paragrafo", item.ArtigoParagrafo, DbType.String);
                        comando.AdicionarParametroEntrada("combinado_artigo", item.CombinadoArtigo, DbType.String);
                        comando.AdicionarParametroEntrada("combinado_artigo_paragrafo", item.CombinadoArtigoParagrafo, DbType.String);
                        comando.AdicionarParametroEntrada("da_do", item.DaDo, DbType.String);
                        comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual());
                        comando.AdicionarParametroSaida("id", DbType.Int32);

                        bancoDeDados.ExecutarNonQuery(comando);

                        item.Id = Convert.ToInt32(comando.ObterValorParametro("id"));
                    }
                }

                #endregion

                #endregion

                Historico.Gerar(enquadramento.FiscalizacaoId, eHistoricoArtefato.fiscalizacao, eHistoricoAcao.atualizar, bancoDeDados);

                Consulta.Gerar(enquadramento.FiscalizacaoId, eHistoricoArtefato.fiscalizacao, bancoDeDados);

                bancoDeDados.Commit();
            }

            return(enquadramento);
        }
Exemple #4
0
        internal Enquadramento Obter(int fiscalizacaoId, BancoDeDados banco = null)
        {
            Enquadramento enquadramento = new Enquadramento();

            using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco))
            {
                #region Enquadramento

                Comando comando = bancoDeDados.CriarComando(@"select e.id, e.tid from tab_fisc_enquadramento e
															where e.fiscalizacao = :fiscalizacao"                                                            , EsquemaBanco);

                comando.AdicionarParametroEntrada("fiscalizacao", fiscalizacaoId, DbType.Int32);

                using (IDataReader reader = bancoDeDados.ExecutarReader(comando))
                {
                    if (reader.Read())
                    {
                        enquadramento.Id             = Convert.ToInt32(reader["id"]);
                        enquadramento.FiscalizacaoId = fiscalizacaoId;
                        enquadramento.Tid            = reader["tid"].ToString();

                        #region Artigos

                        comando = bancoDeDados.CriarComando(@"select e.id, e.artigo, e.artigo_paragrafo, e.combinado_artigo,
															e.combinado_artigo_paragrafo, e.da_do, e.tid from {0}tab_fisc_enquadr_artig e
															where e.enquadramento_id = :enquadramento order by e.id"                                                            , EsquemaBanco);

                        comando.AdicionarParametroEntrada("enquadramento", enquadramento.Id, DbType.Int32);

                        using (IDataReader readerAux = bancoDeDados.ExecutarReader(comando))
                        {
                            while (readerAux.Read())
                            {
                                Artigo artigo = new Artigo();
                                artigo.Id                       = Convert.ToInt32(readerAux["id"]);
                                artigo.Identificador            = Guid.NewGuid().ToString();                      //Identificador p/ Tela
                                artigo.ArtigoTexto              = readerAux["artigo"].ToString();
                                artigo.ArtigoParagrafo          = readerAux["artigo_paragrafo"].ToString();
                                artigo.CombinadoArtigo          = readerAux["combinado_artigo"].ToString();
                                artigo.CombinadoArtigoParagrafo = readerAux["combinado_artigo_paragrafo"].ToString();
                                artigo.DaDo                     = readerAux["da_do"].ToString();
                                artigo.Tid                      = readerAux["tid"].ToString();

                                enquadramento.Artigos.Add(artigo);
                            }

                            readerAux.Close();
                        }

                        #endregion
                    }

                    reader.Close();
                }

                #endregion
            }
            return(enquadramento);
        }
Exemple #5
0
        public Enquadramento Salvar(Enquadramento enquadramento, BancoDeDados banco = null)
        {
            if (enquadramento == null)
            {
                throw new Exception("Enquadramento é nulo.");
            }

            if (enquadramento.Id <= 0)
            {
                enquadramento = Criar(enquadramento, banco);
            }
            else
            {
                enquadramento = Editar(enquadramento, banco);
            }

            return(enquadramento);
        }
Exemple #6
0
        public bool Salvar(Enquadramento enquadramento)
        {
            int qtdArquivos = 0;

            foreach (Artigo artigo in enquadramento.Artigos)
            {
                if (!String.IsNullOrWhiteSpace(artigo.ArtigoTexto) || !String.IsNullOrWhiteSpace(artigo.DaDo))
                {
                    if (String.IsNullOrWhiteSpace(artigo.ArtigoTexto))
                    {
                        Validacao.Add(Mensagem.Enquadramento.ArtigoObrigatorio(artigo.Identificador));
                    }
                    else
                    {
                        if (String.IsNullOrWhiteSpace(artigo.DaDo))
                        {
                            Validacao.Add(Mensagem.Enquadramento.DaDoObrigatorio(artigo.Identificador));
                        }
                        else
                        {
                            qtdArquivos++;
                        }
                    }
                }
            }

            if (qtdArquivos <= 0)
            {
                Validacao.Add(Mensagem.Enquadramento.ListaArtigosObrigatoria);
            }

            if (enquadramento.Artigos.Count > 3)
            {
                Validacao.Add(Mensagem.Enquadramento.ListaArtigosCheia);
            }


            return(Validacao.EhValido);
        }
Exemple #7
0
 public EnquadramentoVM(Enquadramento entidade)
 {
     Entidade = entidade;
 }
Exemple #8
0
        internal Enquadramento Editar(Enquadramento enquadramento, BancoDeDados banco = null)
        {
            using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco))
            {
                #region Enquadramento

                bancoDeDados.IniciarTransacao();

                Comando comando = bancoDeDados.CriarComando(@"update {0}tab_fisc_enquadramento e set e.fiscalizacao = :fiscalizacao, e.tid = :tid
															where e.id = :id"                                                            , EsquemaBanco);

                comando.AdicionarParametroEntrada("fiscalizacao", enquadramento.FiscalizacaoId, DbType.Int32);
                comando.AdicionarParametroEntrada("id", enquadramento.Id, DbType.Int32);
                comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual());

                bancoDeDados.ExecutarNonQuery(comando);

                #endregion

                #region Limpar os dados do banco

                //Artigos
                comando = bancoDeDados.CriarComando("delete from {0}tab_fisc_enquadr_artig c ", EsquemaBanco);
                comando.DbCommand.CommandText += String.Format("where c.enquadramento_id = :enquadramento{0}",
                                                               comando.AdicionarNotIn("and", "c.id", DbType.Int32, enquadramento.Artigos.Select(x => x.Id).ToList()));
                comando.AdicionarParametroEntrada("enquadramento", enquadramento.Id, DbType.Int32);
                bancoDeDados.ExecutarNonQuery(comando);

                #endregion

                #region Artigos

                if (enquadramento.Artigos != null && enquadramento.Artigos.Count > 0)
                {
                    foreach (Artigo item in enquadramento.Artigos)
                    {
                        if (item.Id > 0)
                        {
                            comando = bancoDeDados.CriarComando(@"update {0}tab_fisc_enquadr_artig e set e.enquadramento_id = :enquadramento_id, 
																e.artigo = :artigo, e.artigo_paragrafo = :artigo_paragrafo, e.combinado_artigo = :combinado_artigo,
																e.combinado_artigo_paragrafo = :combinado_artigo_paragrafo, e.da_do = :da_do, e.tid = :tid 
																where e.id = :id"                                                                , EsquemaBanco);

                            comando.AdicionarParametroEntrada("id", item.Id, DbType.Int32);
                        }
                        else
                        {
                            comando = bancoDeDados.CriarComando(@"insert into {0}tab_fisc_enquadr_artig a
																(id, enquadramento_id, artigo, artigo_paragrafo, combinado_artigo, combinado_artigo_paragrafo, da_do, tid)
																values({0}seq_tab_fisc_enquadr_artig.nextval, :enquadramento_id, :artigo, :artigo_paragrafo, :combinado_artigo, 
																:combinado_artigo_paragrafo, :da_do, :tid) returning a.id into :id"                                                                , EsquemaBanco);

                            comando.AdicionarParametroSaida("id", DbType.Int32);
                        }

                        comando.AdicionarParametroEntrada("enquadramento_id", enquadramento.Id, DbType.Int32);
                        comando.AdicionarParametroEntrada("artigo", item.ArtigoTexto, DbType.String);
                        comando.AdicionarParametroEntrada("artigo_paragrafo", item.ArtigoParagrafo, DbType.String);
                        comando.AdicionarParametroEntrada("combinado_artigo", item.CombinadoArtigo, DbType.String);
                        comando.AdicionarParametroEntrada("combinado_artigo_paragrafo", item.CombinadoArtigoParagrafo, DbType.String);
                        comando.AdicionarParametroEntrada("da_do", item.DaDo, DbType.String);
                        comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual());

                        bancoDeDados.ExecutarNonQuery(comando);

                        if (item.Id <= 0)
                        {
                            item.Id = Convert.ToInt32(comando.ObterValorParametro("id"));
                        }
                    }
                }

                #endregion

                Historico.Gerar(enquadramento.FiscalizacaoId, eHistoricoArtefato.fiscalizacao, eHistoricoAcao.atualizar, bancoDeDados);

                Consulta.Gerar(enquadramento.FiscalizacaoId, eHistoricoArtefato.fiscalizacao, bancoDeDados);

                bancoDeDados.Commit();
            }

            return(enquadramento);
        }