public BeneficiamentoMadeiraBeneficiamentoVM(BeneficiamentoMadeiraBeneficiamento caracterizacao, List <ProcessoAtividadeItem> atividades, List <Lista> materiaPrimaConsumida, List <Lista> coordenadaslst, List <Lista> tipoGeometrico, List <Lista> unidadeMedida, bool isVisualizar = false, bool isEditar = false) { IsVisualizar = isVisualizar; Caracterizacao = caracterizacao; IsEditar = isEditar; Atividade = ViewModelHelper.CriarSelectList(atividades.Where(x => x.Id == _serrariasQuandoNaoAssociadasAFabricacaoDeEstruturas || x.Id == _fabricacaoDeEstruturasDeMadeiraComAplicacaoRural).ToList(), true, true, selecionado: caracterizacao.Atividade.ToString()); CoodernadaAtividade = new CoordenadaAtividadeVM(caracterizacao.CoordenadaAtividade, coordenadaslst, tipoGeometrico, IsVisualizar); MateriaPrimaFlorestalConsumida = new MateriaPrimaFlorestalConsumidaVM(caracterizacao.MateriasPrimasFlorestais, materiaPrimaConsumida, unidadeMedida, isVisualizar); }
private BeneficiamentoMadeira ObterHistorico(int id, BancoDeDados banco = null, string tid = null, bool simplificado = false) { BeneficiamentoMadeira caracterizacao = new BeneficiamentoMadeira(); int hst = 0; using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { Comando comando = bancoDeDados.CriarComando(@"select c.id, c.empreendimento, c.tid from {0}hst_crt_benefic_madeira 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()) { hst = Convert.ToInt32(reader["id"]); caracterizacao.Id = id; caracterizacao.EmpreendimentoId = Convert.ToInt32(reader["empreendimento"]); caracterizacao.Tid = reader["tid"].ToString(); } reader.Close(); } if (caracterizacao.Id <= 0 || simplificado) { return(caracterizacao); } #region Beneficiamentos using (IDataReader readerAux = bancoDeDados.ExecutarReader(comando)) { comando = bancoDeDados.CriarComando(@"select c.id, c.atividade_id, c.beneficiamento_mad_benf_id, c.volume_madeira_serrar, c.volume_madeira_processar, c.geometria_coord_atv_x, c.geometria_coord_atv_y, c.equip_contr_poluicao_sonora, c.geometria_id, c.geometria_tipo, c.tid from {0}hst_crt_benefic_madeira_benef c where c.id_hst = :id_hst" , EsquemaBanco); comando.AdicionarParametroEntrada("id_hst", hst, DbType.Int32); BeneficiamentoMadeiraBeneficiamento beneficiamento = null; while (readerAux.Read()) { beneficiamento = new BeneficiamentoMadeiraBeneficiamento(); beneficiamento.Id = Convert.ToInt32(readerAux["beneficiamento_mad_benf_id"]); beneficiamento.Atividade = Convert.ToInt32(readerAux["atividade_id"]); beneficiamento.VolumeMadeiraSerrar = readerAux["volume_madeira_serrar"].ToString(); beneficiamento.VolumeMadeiraProcessar = readerAux["volume_madeira_processar"].ToString(); beneficiamento.EquipControlePoluicaoSonora = readerAux["equip_contr_poluicao_sonora"].ToString(); beneficiamento.CoordenadaAtividade.Id = Convert.ToInt32(readerAux["geometria_id"]); beneficiamento.CoordenadaAtividade.Tipo = Convert.ToInt32(readerAux["geometria_tipo"]); if (readerAux["geometria_coord_atv_x"] != null && !Convert.IsDBNull(readerAux["geometria_coord_atv_x"])) { beneficiamento.CoordenadaAtividade.CoordX = Convert.ToDecimal(readerAux["geometria_coord_atv_x"]); } if (readerAux["geometria_coord_atv_y"] != null && !Convert.IsDBNull(readerAux["geometria_coord_atv_y"])) { beneficiamento.CoordenadaAtividade.CoordY = Convert.ToDecimal(readerAux["geometria_coord_atv_y"]); } } readerAux.Close(); #region Materias-Prima Florestal Consumida comando = bancoDeDados.CriarComando(@"select m.materia_prima id, m.materia_prima_tipo, lm.texto materia_prima_tipo_texto, m.unidade, lu.texto unidade_texto, m.quantidade, m.especificar, m.tid from {0}crt_benef_madeira_mat_fl_c m, {0}lov_crt_benefic_madeira_mat_pr_c lm, {0}lov_crt_unidade_medida lu where lm.id = m.materia_prima_tipo and lu.id = m.unidade and c.id_hst = :id order by m.id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", hst, DbType.Int32); using (IDataReader readerAux2 = bancoDeDados.ExecutarReader(comando)) { MateriaPrima materia = null; while (readerAux2.Read()) { materia = new MateriaPrima(); materia.Id = Convert.ToInt32(readerAux2["id"]); materia.MateriaPrimaConsumida = Convert.ToInt32(readerAux2["materia_prima_tipo"]); materia.MateriaPrimaConsumidaTexto = (materia.MateriaPrimaConsumida == (int)eMateriaPrima.Outros) ? readerAux2["especificar"].ToString() : readerAux2["materia_prima_tipo_texto"].ToString(); materia.Unidade = Convert.ToInt32(readerAux2["unidade"]); materia.UnidadeTexto = readerAux2["unidade_texto"].ToString(); materia.Quantidade = readerAux2["quantidade"].ToString(); materia.EspecificarTexto = readerAux2["especificar"].ToString(); materia.Tid = readerAux2["tid"].ToString(); beneficiamento.MateriasPrimasFlorestais.Add(materia); } readerAux2.Close(); } #endregion } #endregion } return(caracterizacao); }