public ActionResult Editar(int id) { if (!_caracterizacaoValidar.Basicas(id)) { return(RedirectToAction("Index", "../Empreendimento", Validacao.QueryParamSerializer())); } if (!_validar.Acessar(id)) { return(RedirectToAction("", "Caracterizacao", new { id = id, Msg = Validacao.QueryParam() })); } InformacaoCorte caracterizacao = _bus.ObterPorEmpreendimento(id); string textoMerge = _caracterizacaoValidar.DependenciasAlteradas( caracterizacao.EmpreendimentoId, (int)eCaracterizacao.InformacaoCorte, eCaracterizacaoDependenciaTipo.Caracterizacao, caracterizacao.Dependencias); if (!string.IsNullOrEmpty(textoMerge)) { caracterizacao = _bus.MergiarGeo(caracterizacao); } InformacaoCorteVM vm = new InformacaoCorteVM(caracterizacao); vm.TextoMerge = textoMerge; vm.AtualizarDependenciasModalTitulo = Mensagem.Caracterizacao.AtualizarDependenciasModalTitulo.Texto; return(View(vm)); }
public ActionResult InformacaoCorteInformacaoExcluir(int itemId, int empreendimentoId) { InformacaoCorte caracterizacao = _bus.ObterPorEmpreendimento(empreendimentoId); if (caracterizacao.InformacoesCortes.Count > 1) { _bus.ExcluirInformacao(itemId); caracterizacao = _bus.ObterPorEmpreendimento(empreendimentoId); } else { Validacao.Add(Mensagem.InformacaoCorte.InformacaoCorteUltimoItemListaObrigatorio); } caracterizacao.Dependencias = _caracterizacaoBus.ObterDependenciasAtual(empreendimentoId, eCaracterizacao.InformacaoCorte, eCaracterizacaoDependenciaTipo.Caracterizacao); InformacaoCorteVM vm = new InformacaoCorteVM(caracterizacao); String html = ViewModelHelper.RenderPartialViewToString(ControllerContext, "InformacaoCorte", vm); return(Json(new { @EhValido = Validacao.EhValido, @Msg = Validacao.Erros, @CaracterizacaoId = caracterizacao.Id, @Html = html, @UrlRedirecionar = Url.Action("", "Caracterizacao", new { id = caracterizacao.EmpreendimentoId, Msg = Validacao.QueryParam() }) }, JsonRequestBehavior.AllowGet)); }
public ActionResult Criar(int id) { if (!_caracterizacaoValidar.Basicas(id)) { return(RedirectToAction("Index", "../Empreendimento", Validacao.QueryParamSerializer())); } InformacaoCorte caracterizacao = _bus.ObterPorEmpreendimento(id) ?? new InformacaoCorte(); caracterizacao.EmpreendimentoId = id; if (caracterizacao.Id > 0) { return(RedirectToAction("Editar", new { id = caracterizacao.EmpreendimentoId })); } if (!_validar.Acessar(caracterizacao.EmpreendimentoId)) { return(RedirectToAction("", "Caracterizacao", new { id = id, Msg = Validacao.QueryParam() })); } caracterizacao.Dependencias = _caracterizacaoBus.ObterDependenciasAtual(id, eCaracterizacao.InformacaoCorte, eCaracterizacaoDependenciaTipo.Caracterizacao); InformacaoCorteVM vm = new InformacaoCorteVM(caracterizacao); vm.AtualizarDependenciasModalTitulo = Mensagem.Caracterizacao.AtualizarDependenciasModalTitulo.Texto; return(View(vm)); }
public ActionResult GeoMergiar(InformacaoCorte caracterizacao) { InformacaoCorteVM vm = new InformacaoCorteVM(_bus.MergiarGeo(caracterizacao)); vm.Caracterizacao.InformacaoCorteInformacao = vm.Caracterizacao.InformacoesCortes.First(); _bus.Salvar(vm.Caracterizacao); return(Json(new { @EhValido = Validacao.EhValido, @Msg = Validacao.Erros, @Html = ViewModelHelper.RenderPartialViewToString(ControllerContext, "InformacaoCorte", vm), @Dependencias = ViewModelHelper.Json(vm.Caracterizacao.Dependencias) }, JsonRequestBehavior.AllowGet)); }
public InformacaoCorte ObterPorEmpreendimento(int EmpreendimentoId, bool simplificado = false, BancoDeDados banco = null) { InformacaoCorte caracterizacao = null; try { caracterizacao = _da.ObterPorEmpreendimento(EmpreendimentoId, simplificado: simplificado); caracterizacao.Dependencias = _busCaracterizacao.ObterDependencias(caracterizacao.Id, eCaracterizacao.InformacaoCorte, eCaracterizacaoDependenciaTipo.Caracterizacao); } catch (Exception exc) { Validacao.AddErro(exc); } return(caracterizacao); }
internal int Salvar(InformacaoCorte caracterizacao, BancoDeDados banco) { if (caracterizacao == null) { throw new Exception("A Caracterização é nula."); } if (caracterizacao.Id <= 0) { int?id = Criar(caracterizacao, banco); return(id.GetValueOrDefault(0)); } else { Editar(caracterizacao.InformacaoCorteInformacao, banco); return(caracterizacao.Id); } }
internal InformacaoCorte ObterPorEmpreendimento(int empreendimento, bool simplificado = false, BancoDeDados banco = null) { InformacaoCorte caracterizacao = new InformacaoCorte(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { Comando comando = bancoDeDados.CriarComando(@"select s.id from {0}crt_informacao_corte s where s.empreendimento = :empreendimento", EsquemaBanco); comando.AdicionarParametroEntrada("empreendimento", empreendimento, DbType.Int32); object valor = bancoDeDados.ExecutarScalar(comando); if (valor != null && !Convert.IsDBNull(valor)) { caracterizacao = Obter(Convert.ToInt32(valor), bancoDeDados, simplificado); } } return(caracterizacao); }
public int Salvar(InformacaoCorte caracterizacao) { int id = 0; try { if (_validar.Salvar(caracterizacao)) { GerenciadorTransacao.ObterIDAtual(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia()) { bancoDeDados.IniciarTransacao(); id = _da.Salvar(caracterizacao, bancoDeDados); //Gerencia as dependências da caracterização if (caracterizacao.Dependencias != null && caracterizacao.Dependencias.Count > 0) { _busCaracterizacao.Dependencias(new Caracterizacao() { Id = caracterizacao.Id, Tipo = eCaracterizacao.InformacaoCorte, DependenteTipo = eCaracterizacaoDependenciaTipo.Caracterizacao, Dependencias = caracterizacao.Dependencias }, bancoDeDados); } Validacao.Add(Mensagem.InformacaoCorte.Salvar); bancoDeDados.Commit(); } } } catch (Exception e) { Validacao.AddErro(e); } return(id); }
public ActionResult Salvar(InformacaoCorte caracterizacao) { caracterizacao.Id = _bus.Salvar(caracterizacao); caracterizacao = _bus.ObterPorEmpreendimento(caracterizacao.EmpreendimentoId); caracterizacao.Dependencias = _caracterizacaoBus.ObterDependenciasAtual(caracterizacao.EmpreendimentoId, eCaracterizacao.InformacaoCorte, eCaracterizacaoDependenciaTipo.Caracterizacao); InformacaoCorteVM vm = new InformacaoCorteVM(caracterizacao); vm.AtualizarDependenciasModalTitulo = Mensagem.Caracterizacao.AtualizarDependenciasModalTitulo.Texto; String html = ViewModelHelper.RenderPartialViewToString(ControllerContext, "InformacaoCorte", vm); return(Json(new { @EhValido = Validacao.EhValido, @Msg = Validacao.Erros, @CaracterizacaoId = caracterizacao.Id, @Html = html, @Dependencias = ViewModelHelper.Json(caracterizacao.Dependencias), @UrlRedirecionar = Url.Action("", "Caracterizacao", new { id = caracterizacao.EmpreendimentoId, Msg = Validacao.QueryParam() }) }, JsonRequestBehavior.AllowGet)); }
public bool Salvar(InformacaoCorte caracterizacao) { if (!_caracterizacaoValidar.Basicas(caracterizacao.EmpreendimentoId)) { return(false); } if (caracterizacao.Id <= 0 && (_da.ObterPorEmpreendimento(caracterizacao.EmpreendimentoId, true) ?? new InformacaoCorte()).Id > 0) { Validacao.Add(Mensagem.Caracterizacao.EmpreendimentoCaracterizacaoJaCriada); return(false); } if (!Acessar(caracterizacao.EmpreendimentoId)) { return(false); } InformacaoCorteInformacaoSalvar(caracterizacao.InformacaoCorteInformacao); return(Validacao.EhValido); }
internal InformacaoCorte Obter(int id, BancoDeDados banco = null, string tid = null, bool simplificado = false) { InformacaoCorte caracterizacao = new InformacaoCorte(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { if (tid == null) { caracterizacao = Obter(id, bancoDeDados, simplificado); } else { Comando comando = bancoDeDados.CriarComando(@"select count(s.id) existe from {0}crt_informacao_corte s where s.id = :id and s.tid = :tid", EsquemaBanco); comando.AdicionarParametroEntrada("id", id, DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, tid); caracterizacao = (Convert.ToBoolean(bancoDeDados.ExecutarScalar(comando))) ? Obter(id, bancoDeDados, simplificado) : ObterHistorico(id, bancoDeDados, tid, simplificado); } } return(caracterizacao); }
internal InformacaoCorte Obter(int id, BancoDeDados banco = null, bool simplificado = false) { InformacaoCorte caracterizacao = new InformacaoCorte(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { #region Informacao de Corte Comando comando = bancoDeDados.CriarComando(@"select c.empreendimento, c.tid from {0}crt_informacao_corte c where c.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", id, DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { caracterizacao.Id = id; caracterizacao.EmpreendimentoId = Convert.ToInt32(reader["empreendimento"]); caracterizacao.Tid = reader["tid"].ToString(); } reader.Close(); } #endregion if (caracterizacao.Id <= 0 || simplificado) { return(caracterizacao); } #region Informacoes comando = bancoDeDados.CriarComando(@"select i.id, i.arvores_isoladas_restante, i.area_corte_restante, i.data_informacao, i.tid from crt_inf_corte_inf i where i.caracterizacao = :caracterizacao order by i.id" , EsquemaBanco); comando.AdicionarParametroEntrada("caracterizacao", caracterizacao.Id, DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { InformacaoCorteInformacao informacaoCorte = null; while (reader.Read()) { informacaoCorte = new InformacaoCorteInformacao(); informacaoCorte.Id = Convert.ToInt32(reader["id"]); informacaoCorte.CaracterizacaoId = caracterizacao.Id; informacaoCorte.Tid = reader["tid"].ToString(); if (reader["arvores_isoladas_restante"] != null && !Convert.IsDBNull(reader["arvores_isoladas_restante"])) { informacaoCorte.ArvoresIsoladasRestantes = Convert.ToDecimal(reader["arvores_isoladas_restante"]).ToString("N0"); } if (reader["data_informacao"] != null && !Convert.IsDBNull(reader["data_informacao"])) { informacaoCorte.DataInformacao.DataTexto = Convert.ToDateTime(reader["data_informacao"]).ToShortDateString(); } if (reader["area_corte_restante"] != null && !Convert.IsDBNull(reader["area_corte_restante"])) { informacaoCorte.AreaCorteRestante = Convert.ToDecimal(reader["area_corte_restante"]).ToString("N4"); } #region Especies comando = bancoDeDados.CriarComando(@"select e.id, e.especie, le.texto especie_texto, e.especie_especificar_texto, e.arvores_isoladas, e.area_corte, e.idade_plantio, e.tid from crt_inf_corte_inf_especie e, lov_crt_silvicultura_cult_fl le where le.id = e.especie and e.inf_corte_inf = :inf_corte_inf order by e.id" , EsquemaBanco); comando.AdicionarParametroEntrada("inf_corte_inf", informacaoCorte.Id, DbType.Int32); using (IDataReader readerAux = bancoDeDados.ExecutarReader(comando)) { Especie especie = null; while (readerAux.Read()) { especie = new Especie(); especie.Id = Convert.ToInt32(readerAux["id"]); especie.EspecieTipo = Convert.ToInt32(readerAux["especie"]); especie.EspecieTipoTexto = readerAux["especie_texto"].ToString(); especie.ArvoresIsoladas = readerAux["arvores_isoladas"].ToString(); especie.Tid = readerAux["tid"].ToString(); if (readerAux["especie_especificar_texto"] != null && !Convert.IsDBNull(readerAux["especie_especificar_texto"])) { especie.EspecieEspecificarTexto = readerAux["especie_especificar_texto"].ToString(); especie.EspecieTipoTexto = especie.EspecieEspecificarTexto; } if (readerAux["area_corte"] != null && !Convert.IsDBNull(readerAux["area_corte"])) { especie.AreaCorte = Convert.ToDecimal(readerAux["area_corte"]).ToString("N4"); } if (readerAux["idade_plantio"] != null && !Convert.IsDBNull(readerAux["idade_plantio"])) { especie.IdadePlantio = Convert.ToDecimal(readerAux["idade_plantio"]).ToString("N0"); } informacaoCorte.Especies.Add(especie); } readerAux.Close(); } #endregion #region Produtos comando = bancoDeDados.CriarComando(@"select p.id, p.produto, lp.texto produto_texto, p.destinacao_material, lm.texto destinacao_material_texto, p.quantidade, p.tid from {0}crt_inf_corte_inf_produto p, {0}lov_crt_produto lp, {0}lov_crt_inf_corte_inf_dest_mat lm where lp.id = p.produto and lm.id = p.destinacao_material and p.inf_corte_inf = :inf_corte_inf order by p.id" , EsquemaBanco); comando.AdicionarParametroEntrada("inf_corte_inf", informacaoCorte.Id, DbType.Int32); using (IDataReader readerAux = bancoDeDados.ExecutarReader(comando)) { Produto produto = null; while (readerAux.Read()) { produto = new Produto(); produto.Id = Convert.ToInt32(readerAux["id"]); produto.ProdutoTipo = Convert.ToInt32(readerAux["produto"]); produto.ProdutoTipoTexto = readerAux["produto_texto"].ToString(); produto.DestinacaoTipo = Convert.ToInt32(readerAux["destinacao_material"]); produto.DestinacaoTipoTexto = readerAux["destinacao_material_texto"].ToString(); produto.Tid = readerAux["tid"].ToString(); if (readerAux["quantidade"] != null && !Convert.IsDBNull(readerAux["quantidade"])) { produto.Quantidade = Convert.ToDecimal(readerAux["quantidade"]).ToString("N2"); } informacaoCorte.Produtos.Add(produto); } readerAux.Close(); } #endregion caracterizacao.InformacoesCortes.Add(informacaoCorte); } reader.Close(); } #endregion } return(caracterizacao); }
public InformacaoCorte MergiarGeo(InformacaoCorte caracterizacaoAtual) { caracterizacaoAtual.Dependencias = _busCaracterizacao.ObterDependenciasAtual(caracterizacaoAtual.EmpreendimentoId, eCaracterizacao.InformacaoCorte, eCaracterizacaoDependenciaTipo.Caracterizacao); return(caracterizacaoAtual); }
public InformacaoCorteVM(InformacaoCorte caracterizacao, bool isVisualizar = false) { IsVisualizar = isVisualizar; Caracterizacao = caracterizacao; }
internal int?Criar(InformacaoCorte caracterizacao, BancoDeDados banco = null) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { #region Informacao de Corte bancoDeDados.IniciarTransacao(); Comando comando = bancoDeDados.CriarComando(@"insert into {0}crt_informacao_corte(id, empreendimento, tid) values({0}seq_crt_informacao_corte.nextval, :empreendimento, :tid) returning id into :id" , EsquemaBanco); comando.AdicionarParametroEntrada("empreendimento", caracterizacao.EmpreendimentoId, DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); comando.AdicionarParametroSaida("id", DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); caracterizacao.Id = Convert.ToInt32(comando.ObterValorParametro("id")); #region Informacao de Corte Informacao comando = bancoDeDados.CriarComando(@"insert into {0}crt_inf_corte_inf(id, caracterizacao, arvores_isoladas_restante, area_corte_restante, data_informacao, tid) values({0}seq_crt_inf_corte_inf.nextval, :caracterizacao, :arvores_isoladas_restante, :area_corte_restante, :data_informacao, :tid) returning id into :id" , EsquemaBanco); comando.AdicionarParametroEntrada("caracterizacao", caracterizacao.Id, DbType.Int32); comando.AdicionarParametroEntrada("arvores_isoladas_restante", caracterizacao.InformacaoCorteInformacao.ArvoresIsoladasRestantes, DbType.Decimal); comando.AdicionarParametroEntrada("area_corte_restante", caracterizacao.InformacaoCorteInformacao.AreaCorteRestante, DbType.Decimal); comando.AdicionarParametroEntrada("data_informacao", caracterizacao.InformacaoCorteInformacao.DataInformacao.DataTexto, DbType.DateTime); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); comando.AdicionarParametroSaida("id", DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); caracterizacao.InformacaoCorteInformacao.Id = Convert.ToInt32(comando.ObterValorParametro("id")); #region Especies if (caracterizacao.InformacaoCorteInformacao.Especies != null && caracterizacao.InformacaoCorteInformacao.Especies.Count > 0) { foreach (Especie especie in caracterizacao.InformacaoCorteInformacao.Especies) { comando = bancoDeDados.CriarComando(@"insert into {0}crt_inf_corte_inf_especie(id, inf_corte_inf, especie, especie_especificar_texto, arvores_isoladas, area_corte, idade_plantio, tid) values({0}seq_crt_inf_corte_inf_especie.nextval, :inf_corte_inf, :especie, :especie_especificar_texto, :arvores_isoladas, :area_corte, :idade_plantio, :tid)" , EsquemaBanco); comando.AdicionarParametroEntrada("inf_corte_inf", caracterizacao.InformacaoCorteInformacao.Id, DbType.Int32); comando.AdicionarParametroEntrada("especie", especie.EspecieTipo, DbType.Int32); comando.AdicionarParametroEntrada("especie_especificar_texto", String.IsNullOrWhiteSpace(especie.EspecieEspecificarTexto) ? (Object)DBNull.Value: especie.EspecieEspecificarTexto, DbType.String); comando.AdicionarParametroEntrada("arvores_isoladas", especie.ArvoresIsoladas, DbType.Decimal); comando.AdicionarParametroEntrada("area_corte", especie.AreaCorte, DbType.Decimal); comando.AdicionarParametroEntrada("idade_plantio", especie.IdadePlantio, DbType.Decimal); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); } } #endregion #region Produtos if (caracterizacao.InformacaoCorteInformacao.Produtos != null && caracterizacao.InformacaoCorteInformacao.Produtos.Count > 0) { foreach (Produto produto in caracterizacao.InformacaoCorteInformacao.Produtos) { comando = bancoDeDados.CriarComando(@"insert into crt_inf_corte_inf_produto(id, inf_corte_inf, produto, destinacao_material, quantidade, tid) values({0}seq_crt_inf_corte_inf_produto.nextval, :inf_corte_inf, :produto, :destinacao_material, :quantidade, :tid)" , EsquemaBanco); comando.AdicionarParametroEntrada("inf_corte_inf", caracterizacao.InformacaoCorteInformacao.Id, DbType.Int32); comando.AdicionarParametroEntrada("produto", produto.ProdutoTipo, DbType.Int32); comando.AdicionarParametroEntrada("destinacao_material", produto.DestinacaoTipo, DbType.Int32); comando.AdicionarParametroEntrada("quantidade", produto.Quantidade, DbType.Decimal); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); } } #endregion #endregion #endregion #region Histórico Historico.Gerar(caracterizacao.Id, eHistoricoArtefatoCaracterizacao.informacaocorte, eHistoricoAcao.criar, bancoDeDados, null); #endregion bancoDeDados.Commit(); return(caracterizacao.Id); } }
private InformacaoCorte ObterHistorico(int id, BancoDeDados banco = null, string tid = null, bool simplificado = false) { InformacaoCorte caracterizacao = new InformacaoCorte(); int hst = 0; int hst_inf_corte_inf = 0; using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { #region Informacao de Corte Comando comando = bancoDeDados.CriarComando(@"select c.id, c.empreendimento_id, c.tid from {0}hst_crt_informacao_corte c where c.caracterizacao = :id and c.tid = :tid" , EsquemaBanco); comando.AdicionarParametroEntrada("id", id, DbType.Int32); comando.AdicionarParametroEntrada("tid", DbType.String, 36, tid); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { caracterizacao.Id = id; caracterizacao.EmpreendimentoId = Convert.ToInt32(reader["empreendimento_id"]); caracterizacao.Tid = reader["tid"].ToString(); hst = Convert.ToInt32(reader["id"]); } reader.Close(); } #endregion if (caracterizacao.Id <= 0 || simplificado) { return(caracterizacao); } #region Informacoes comando = bancoDeDados.CriarComando(@"select i.id, i.inf_corte_inf, i.arvores_isoladas_restante, i.area_corte_restante, i.data_informacao, i.tid from hst_crt_inf_corte_inf i where i.caracterizacao = :caracterizacao and i.id_hst = :hst" , EsquemaBanco); comando.AdicionarParametroEntrada("id", id, DbType.Int32); comando.AdicionarParametroEntrada("id", hst, DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { InformacaoCorteInformacao informacaoCorte = null; while (reader.Read()) { informacaoCorte = new InformacaoCorteInformacao(); informacaoCorte.Id = Convert.ToInt32(reader["inf_corte_inf"]); informacaoCorte.ArvoresIsoladasRestantes = reader["arvores_isoladas_restante"].ToString(); informacaoCorte.AreaCorteRestante = reader["area_corte_restante"].ToString(); informacaoCorte.DataInformacao.DataTexto = Convert.ToDateTime(reader["data_informacao"]).ToShortDateString(); informacaoCorte.Tid = reader["tid"].ToString(); hst_inf_corte_inf = Convert.ToInt32(reader["id"]); #region Especies comando = bancoDeDados.CriarComando(@"select e.especie_entidade_id, e.especie_id, e.especie_texto, e.especie_especificar_texto, e.arvores_isoladas, e.area_corte, e.idade_plantio, e.tid from hst_crt_inf_corte_inf_especie e where e.id_hst = :hst_inf_corte_inf" , EsquemaBanco); comando.AdicionarParametroEntrada("inf_corte_inf", informacaoCorte.Id, DbType.Int32); comando.AdicionarParametroEntrada("hst_inf_corte_inf", hst_inf_corte_inf, DbType.Int32); using (IDataReader readerAux = bancoDeDados.ExecutarReader(comando)) { Especie especie = null; while (readerAux.Read()) { especie = new Especie(); especie.Id = Convert.ToInt32(readerAux["especie_entidade_id"]); especie.EspecieTipo = Convert.ToInt32(readerAux["especie_id"]); especie.EspecieTipoTexto = readerAux["especie_texto"].ToString(); especie.ArvoresIsoladas = readerAux["arvores_isoladas"].ToString(); especie.AreaCorte = readerAux["area_corte"].ToString(); especie.Tid = readerAux["tid"].ToString(); if (readerAux["especie_especificar_texto"] != null && !Convert.IsDBNull(readerAux["especie_especificar_texto"])) { especie.EspecieEspecificarTexto = readerAux["especie_especificar_texto"].ToString(); } if (readerAux["idade_plantio"] != null && !Convert.IsDBNull(readerAux["idade_plantio"])) { especie.IdadePlantio = Convert.ToDecimal(readerAux["idade_plantio"]).ToString("N0"); } informacaoCorte.Especies.Add(especie); } readerAux.Close(); } #endregion #region Produtos comando = bancoDeDados.CriarComando(@"select p.id, p.produto_entidade_id, p.produto_id, p.produto_texto, p.destinacao_material_id, p.destinacao_material_texto, p.quantidade, p.tid from {0}hst_crt_inf_corte_inf_produto p where p.id_hst = :hst_inf_corte_inf" , EsquemaBanco); comando.AdicionarParametroEntrada("hst_inf_corte_inf", hst_inf_corte_inf, DbType.Int32); using (IDataReader readerAux = bancoDeDados.ExecutarReader(comando)) { Produto produto = null; while (readerAux.Read()) { produto = new Produto(); produto.Id = Convert.ToInt32(readerAux["produto_entidade_id"]); produto.ProdutoTipo = Convert.ToInt32(readerAux["produto_id"]); produto.ProdutoTipoTexto = readerAux["produto_texto"].ToString(); produto.DestinacaoTipo = Convert.ToInt32(readerAux["destinacao_material_id"]); produto.DestinacaoTipoTexto = readerAux["destinacao_material_texto"].ToString(); produto.Quantidade = readerAux["quantidade"].ToString(); produto.Tid = readerAux["tid"].ToString(); informacaoCorte.Produtos.Add(produto); } readerAux.Close(); } #endregion caracterizacao.InformacoesCortes.Add(informacaoCorte); } reader.Close(); } #endregion } return(caracterizacao); }
internal Outros ObterDadosPDF(int titulo, BancoDeDados banco = null) { Outros outros = new Outros(); InformacaoCorteBus infoCorteBus = new InformacaoCorteBus(); InformacaoCorte infoCorte = null; InformacaoCorteInformacao infoCorteInfo = null; int infoCorteInfoId = 0; using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { #region Dados do Titulo DadosPDF dados = DaEsp.ObterDadosTitulo(titulo, bancoDeDados); outros.Titulo = dados.Titulo; outros.Titulo.SetorEndereco = DaEsp.ObterEndSetor(outros.Titulo.SetorId); outros.Protocolo = dados.Protocolo; outros.Empreendimento = dados.Empreendimento; #endregion #region Especificidade Comando comando = bancoDeDados.CriarComando(@" select e.destinatario, e.informacao_corte from {0}esp_out_informacao_corte e where e.titulo = :titulo ", EsquemaBanco); comando.AdicionarParametroEntrada("titulo", titulo, DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { outros.Destinatario = _daEsp.ObterDadosPessoa(reader.GetValue <int>("destinatario"), outros.Empreendimento.Id, bancoDeDados); infoCorteInfoId = reader.GetValue <int>("informacao_corte"); } reader.Close(); } #endregion #region Dominialidade DominialidadeBus _dominialidadeBus = new DominialidadeBus(); outros.Dominialidade = new DominialidadePDF(_dominialidadeBus.ObterPorEmpreendimento(outros.Empreendimento.Id.GetValueOrDefault(), banco: bancoDeDados)); #endregion #region Informação de corte infoCorte = infoCorteBus.ObterPorEmpreendimento(outros.Empreendimento.Id.GetValueOrDefault(), banco: bancoDeDados); if (infoCorte != null) { infoCorteInfo = infoCorte.InformacoesCortes.SingleOrDefault(x => x.Id == infoCorteInfoId); if (infoCorteInfo != null) { outros.InformacaoCorteInfo = new InformacaoCorteInfoPDF(infoCorteInfo); } } #endregion } return(outros); }