Exemplo n.º 1
0
        public ActionResult Visualizar(int id)
        {
            if (!_validar.Acessar(id))
            {
                return(RedirectToAction("", "Caracterizacao", new { id = id, Msg = Validacao.QueryParam() }));
            }

            Barragem barragem = _bus.ObterPorEmpreendimento(id);

            string textoMerge = _caracterizacaoValidar.DependenciasAlteradas(
                barragem.EmpreendimentoId,
                (int)eCaracterizacao.Barragem,
                eCaracterizacaoDependenciaTipo.Caracterizacao,
                barragem.Dependencias, true);

            BarragemVM vm = new BarragemVM();

            vm.Barragem   = barragem;
            vm.Atividades = ViewModelHelper.CriarSelectList(_listaBus.AtividadesSolicitada.Where(x => x.Id == barragem.AtividadeId).ToList(), true, true, selecionado: barragem.AtividadeId.ToString());
            vm.AtualizarDependenciasModalTitulo = Mensagem.Caracterizacao.AtualizarDependenciasModalTitulo.Texto;
            vm.IsVisualizar = true;
            vm.IsEditar     = false;

            vm.AtualizarDependenciasModalTitulo = Mensagem.Caracterizacao.AtualizarDependenciasModalTitulo.Texto;
            vm.TextoMerge = textoMerge;

            vm.TemARL             = true;
            vm.TemARLDesconhecida = false;

            return(View(vm));
        }
Exemplo n.º 2
0
        public static Barragem ExcluirBarragem(int id)
        {
            try {
                Barragem barragem = new Barragem();

                using (var dbBarragem = new BarragemContext()) {
                    barragem = (
                        from b in dbBarragem.Records
                        where b.ID == id
                        select b).FirstOrDefault();

                    if (barragem != null)
                    {
                        dbBarragem.Records.Remove(barragem);

                        dbBarragem.SaveChanges();
                    }

                    return(barragem);
                }
            }
            catch (Exception e) {
                throw (e);
            }
        }
Exemplo n.º 3
0
        public static Barragem AlterarBarragem(int id, BarragemRequest barragemRequest)
        {
            try {
                Barragem barragem = new Barragem();

                using (var dbBarragem = new BarragemContext()) {
                    barragem = (
                        from a in dbBarragem.Records
                        where a.ID == id
                        select a).FirstOrDefault();

                    if (barragem != null)
                    {
                        barragem.IDMetodoAlteamento = barragemRequest.IDMetodoAlteamento;
                        barragem.Name = barragemRequest.Name;
                        barragem.LocalizacaoGeografica = barragemRequest.LocalizacaoGeografica;
                        barragem.Volume     = barragemRequest.Volume;
                        barragem.Comunidade = barragemRequest.Comunidade;

                        dbBarragem.Records.Update(barragem);

                        dbBarragem.SaveChanges();
                    }

                    return(barragem);
                }
            }
            catch (Exception e) {
                throw (e);
            }
        }
Exemplo n.º 4
0
        public async Task <Barragem> Details(int?id)
        {
            var barragem = await this._barragemService.FindByIdAsync(id);

            if (barragem == null)
            {
                barragem = new Barragem();
            }
            return(barragem);
        }
Exemplo n.º 5
0
        public void Alterar([FromBody] Barragem barragem)
        {
            MongoDbContext dbContext        = new MongoDbContext();
            var            updateDefinition = Builders <Barragem> .Update
                                              .Set(u => u.VolumeMax, barragem.VolumeMax)
                                              .Set(u => u.Lat, barragem.Lat)
                                              .Set(u => u.Long, barragem.Long);

            var filter = Builders <Barragem> .Filter.Eq(b => b.Id, barragem.Id);

            dbContext.Barragens.UpdateOne(filter, updateDefinition);
        }
Exemplo n.º 6
0
        public IHttpActionResult AlterarBarragem(int id, [FromBody] BarragemRequest barragemRequest)
        {
            Barragem barragem = BarragemLogical.AlterarBarragem(id, barragemRequest);

            if (barragem != null)
            {
                return(Ok(barragem));
            }
            else
            {
                return(NotFound());
            }
        }
Exemplo n.º 7
0
        public IHttpActionResult ExcluirBarragem(int id)
        {
            Barragem barragem = BarragemLogical.ExcluirBarragem(id);

            if (barragem != null)
            {
                return(Ok(barragem));
            }
            else
            {
                return(NotFound());
            }
        }
Exemplo n.º 8
0
        public ActionResult Criar(int id)
        {
            if (!_caracterizacaoValidar.Basicas(id))
            {
                return(RedirectToAction("Index", "../Empreendimento", Validacao.QueryParamSerializer()));
            }

            Barragem barragem = new Barragem();

            barragem.EmpreendimentoId = id;

            if (!_validar.Acessar(barragem.EmpreendimentoId))
            {
                return(RedirectToAction("", "Caracterizacao", new { id = id, Msg = Validacao.QueryParam() }));
            }

            barragem = _bus.ObterPorEmpreendimento(id);

            if (barragem.Id > 0)
            {
                return(RedirectToAction("Editar", "Barragem", new { id = id, Msg = Validacao.QueryParam() }));
            }

            barragem.EmpreendimentoId = id;

            barragem.Dependencias = _caracterizacaoBus.ObterDependenciasAtual(id, eCaracterizacao.Barragem, eCaracterizacaoDependenciaTipo.Caracterizacao);

            BarragemVM vm = new BarragemVM();

            vm.Barragem   = barragem;
            vm.Atividades = ViewModelHelper.CriarSelectList(_listaBus.AtividadesSolicitada.Where(x => x.Id == barragem.AtividadeId).ToList(), true, true, selecionado: barragem.AtividadeId.ToString());
            vm.AtualizarDependenciasModalTitulo = Mensagem.Caracterizacao.AtualizarDependenciasModalTitulo.Texto;

            var emp         = _empBus.Obter(id);
            var enderecoEmp = emp.Enderecos.Find(x => x.ZonaLocalizacaoId == (int)eEmpreendimentoLocalizacao.ZonaRural);

            if (enderecoEmp != null)
            {
                vm.TemARL             = _bus.TemARL(id);
                vm.TemARLDesconhecida = _bus.TemARLDesconhecida(id);
            }
            else
            {
                vm.TemARL             = true;
                vm.TemARLDesconhecida = false;
            }

            return(View(vm));
        }
Exemplo n.º 9
0
        public Barragem Obter(int id, bool simplificado = false, BancoDeDados banco = null)
        {
            Barragem barragem = new Barragem();

            try
            {
                barragem = _da.Obter(id, banco, simplificado);
            }
            catch (Exception exc)
            {
                Validacao.AddErro(exc);
            }

            return(barragem);
        }
Exemplo n.º 10
0
        public Barragem ObterPorEmpreendimento(int empreendimento, bool simplificado = false, BancoDeDados banco = null)
        {
            Barragem caracterizacao = null;

            try
            {
                caracterizacao = _da.ObterPorEmpreendimento(empreendimento, simplificado: simplificado);
                caracterizacao.Dependencias = _busCaracterizacao.ObterDependencias(caracterizacao.Id, eCaracterizacao.Barragem, eCaracterizacaoDependenciaTipo.Caracterizacao);
            }
            catch (Exception exc)
            {
                Validacao.AddErro(exc);
            }

            return(caracterizacao);
        }
Exemplo n.º 11
0
        public static Barragem IncluirBarragem(BarragemRequest barragemRequest)
        {
            try {
                using (var dbBarragem = new BarragemContext()) {
                    Barragem barragem = new Barragem(barragemRequest.IDMetodoAlteamento, barragemRequest.Name, barragemRequest.LocalizacaoGeografica, barragemRequest.Volume, barragemRequest.Comunidade);
                    dbBarragem.Records.Add(barragem);

                    dbBarragem.SaveChanges();

                    return(barragem);
                }
            }
            catch (Exception e) {
                throw (e);
            }
        }
Exemplo n.º 12
0
        internal bool Salvar(Barragem caracterizacao)
        {
            if (caracterizacao.Barragens.Where(x => !x.Quantidade.HasValue).Count() > 0)
            {
                Validacao.Add(Mensagem.BarragemMsg.InformeQuantidade);
            }

            if (caracterizacao.Barragens.Where(x => x.Quantidade.HasValue && x.Quantidade == 0).Count() > 0)
            {
                Validacao.Add(Mensagem.BarragemMsg.InformeQuantidadeZero);
            }

            if (caracterizacao.Barragens.Where(x => x.Quantidade.GetValueOrDefault() > 0 && x.BarragensDados.Count > x.Quantidade.GetValueOrDefault()).Count() > 0)
            {
                Validacao.Add(Mensagem.BarragemMsg.QuantidadeInvalida);
            }

            if (caracterizacao.Barragens.Where(x => x.FinalidadeId == 0).Count() > 0)
            {
                Validacao.Add(Mensagem.BarragemMsg.SelecioneFinalidade);
            }

            if (caracterizacao.Barragens.Where(x => x.FinalidadeId == (int)eFinalidade.Outros && string.IsNullOrEmpty(x.Especificar)).Count() > 0)
            {
                Validacao.Add(Mensagem.BarragemMsg.InformeOutroFinalidade);
            }

            if (caracterizacao.Barragens.Where(x => x.BarragensDados.Count == 0).Count() > 0)
            {
                Validacao.Add(Mensagem.BarragemMsg.AddBarragemDadosItem);
            }

            caracterizacao.Barragens.ForEach(x =>
            {
                if (x.CoordenadaAtividade.Id == 0)
                {
                    Validacao.Add(Mensagem.CoordenadaAtividade.CoordenadaAtividadeObrigatoria);
                }

                if (x.CoordenadaAtividade.Tipo == 0)
                {
                    Validacao.Add(Mensagem.CoordenadaAtividade.GeometriaTipoObrigatorio);
                }
            });

            return(Validacao.EhValido);
        }
Exemplo n.º 13
0
        internal int Salvar(Barragem barragem, BancoDeDados banco)
        {
            if (barragem == null)
            {
                throw new Exception("A Caracterização de Barragem é nula.");
            }

            if (barragem.Id <= 0)
            {
                return(Criar(barragem, banco));
            }
            else
            {
                Editar(barragem, banco);
                return(barragem.Id);
            }
        }
Exemplo n.º 14
0
        public async Task UpdateAsync(Barragem barragem)
        {
            var hasAny = await _context.Barragem.AnyAsync(s => s.Id == barragem.Id);

            if (!hasAny)
            {
                throw new NotFoundException("Id not found");
            }

            try
            {
                _context.Update(barragem);
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException e)
            {
                throw new DbConcurrencyException(e.Message);
            }
        }
Exemplo n.º 15
0
        internal Barragem ObterPorEmpreendimento(int empreendimento, bool simplificado = false, BancoDeDados banco = null)
        {
            Barragem regularizacao = new Barragem();

            using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco))
            {
                Comando comando = bancoDeDados.CriarComando(@"select s.id from {0}crt_barragem s where s.empreendimento = :empreendimento", EsquemaBanco);
                comando.AdicionarParametroEntrada("empreendimento", empreendimento, DbType.Int32);

                object valor = bancoDeDados.ExecutarScalar(comando);

                if (valor != null && !Convert.IsDBNull(valor))
                {
                    regularizacao = Obter(Convert.ToInt32(valor), bancoDeDados, simplificado);
                }
            }

            return(regularizacao);
        }
Exemplo n.º 16
0
        public Task Consume(ConsumeContext <AtivoAdicionadoEvent> context)
        {
            if (context.Message.TipoId == 1)
            {
                var            msg       = context.Message;
                MongoDbContext dbContext = new MongoDbContext();

                var barragem = new Barragem()
                {
                    Id   = context.Message.Id,
                    Nome = context.Message.Nome
                };

                dbContext.Barragens.InsertOne(barragem);
            }


            return(Task.CompletedTask);
        }
Exemplo n.º 17
0
        public ActionResult ExcluirBarragemItem(int barragemItemId, int barragemId)
        {
            Barragem barragem = _bus.Obter(barragemId);

            if (barragem.Barragens.Count > 1)
            {
                _bus.ExcluirBarragemItem(barragemItemId);
                barragem = _bus.Obter(barragemId);
            }
            else
            {
                Validacao.Add(Mensagem.BarragemMsg.BarragemUltimoItemListaObrigatorio);
            }

            return(Json(new
            {
                @EhValido = Validacao.EhValido,
                @Msg = Validacao.Erros,
                @TotalLamina = barragem.TotalLamina,
                @TotalArmazenado = barragem.TotalArmazenado
            }, JsonRequestBehavior.AllowGet));
        }
Exemplo n.º 18
0
        public ActionResult Criar(Barragem barragem, int?barragemItemIdEdicao)
        {
            barragem.Dependencias = _caracterizacaoBus.ObterDependenciasAtual(barragem.EmpreendimentoId, eCaracterizacao.Barragem, eCaracterizacaoDependenciaTipo.Caracterizacao);

            barragem.Id = _bus.Salvar(barragem);

            if (Validacao.EhValido)
            {
                barragem = _bus.Obter(barragem.Id);
                BarragemItem item = null;

                if (barragemItemIdEdicao.GetValueOrDefault(0) > 0)
                {
                    item = barragem.Barragens.Find(x => x.Id == barragemItemIdEdicao);
                }
                else
                {
                    item = barragem.Barragens.OrderByDescending(x => x.Id).First();
                }

                return(Json(new
                {
                    @EhValido = Validacao.EhValido,
                    @Msg = Validacao.Erros,
                    @BarragemItem = item,
                    @TotalLamina = barragem.TotalLamina,
                    @TotalArmazenado = barragem.TotalArmazenado,
                    @BarragemId = barragem.Id
                }, JsonRequestBehavior.AllowGet));
            }
            else
            {
                return(Json(new
                {
                    @EhValido = Validacao.EhValido,
                    @Msg = Validacao.Erros
                }, JsonRequestBehavior.AllowGet));
            }
        }
Exemplo n.º 19
0
        public ActionResult EditarFinalidade(int id, int idGeral)
        {
            List <BarragemItem> listaFinalidades = _bus.ObterListaFinalidade(id);

            if (listaFinalidades.Count > 0)
            {
                listaFinalidades.First().Id = id;
            }
            else
            {
                listaFinalidades.Add(new BarragemItem {
                    Id = id
                });
            }

            Barragem retorno = new Barragem()
            {
                Id        = idGeral, //id da barragem
                Barragens = listaFinalidades
            };

            return(View("EditarFinalidade", retorno));
        }
Exemplo n.º 20
0
        public Task Consume(ConsumeContext <AtivoAlteradoEvent> context)
        {
            if (context.Message.TipoId == 1)
            {
                var            msg       = context.Message;
                MongoDbContext dbContext = new MongoDbContext();

                var barragem = new Barragem()
                {
                    Id   = context.Message.Id,
                    Nome = context.Message.Nome
                };

                var updateDefinition = Builders <Barragem> .Update
                                       .Set(u => u.Nome, msg.Nome);

                var filter = Builders <Barragem> .Filter.Eq(b => b.Id, msg.Id);

                dbContext.Barragens.UpdateOne(filter, updateDefinition);
            }

            return(Task.CompletedTask);
        }
Exemplo n.º 21
0
        public int Salvar(Barragem caracterizacao)
        {
            int id = 0;

            try
            {
                if (_validar.Salvar(caracterizacao))
                {
                    GerenciadorTransacao.ObterIDAtual();

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

                        id = _da.Salvar(caracterizacao, bancoDeDados);

                        _busCaracterizacao.Dependencias(new Caracterizacao()
                        {
                            Id             = caracterizacao.Id,
                            Tipo           = eCaracterizacao.Barragem,
                            DependenteTipo = eCaracterizacaoDependenciaTipo.Caracterizacao,
                            Dependencias   = caracterizacao.Dependencias
                        }, bancoDeDados);

                        Validacao.Add(Mensagem.BarragemMsg.Salvar);

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

            return(id);
        }
Exemplo n.º 22
0
 public async Task InsertAsync(Barragem barragem)
 {
     _context.Add(barragem);
     await _context.SaveChangesAsync();
 }
Exemplo n.º 23
0
        public void Seed()
        {
            //se tiver alguma coisa no banco, sai fora
            if (_context.Regiao.Any())
            {
                return; // banco já foi populado
            }

            Regiao r1 = new Regiao {
                Id = 1, UF = "MG", Cidade = "Outro Preto"
            };
            Regiao r2 = new Regiao {
                Id = 2, UF = "MG", Cidade = "Nova Lima"
            };
            Regiao r3 = new Regiao {
                Id = 3, UF = "MG", Cidade = "Brumadinho"
            };

            Barragem b1 = new Barragem {
                Id = 1, RegiaoId = 1, Regiao = r1, Descricao = "Barragem Forquilha I", DataCadastro = new DateTime(2019, 10, 7)
            };
            Barragem b2 = new Barragem {
                Id = 2, RegiaoId = 1, Regiao = r1, Descricao = "Barragem Forquilha II", DataCadastro = new DateTime(2019, 10, 9)
            };
            Barragem b3 = new Barragem {
                Id = 3, RegiaoId = 1, Regiao = r1, Descricao = "Barragem Forquilha III", DataCadastro = new DateTime(2019, 10, 10)
            };
            Barragem b4 = new Barragem {
                Id = 4, RegiaoId = 2, Regiao = r2, Descricao = "Barragem Capitão do Mato", DataCadastro = new DateTime(2019, 11, 5)
            };
            Barragem b5 = new Barragem {
                Id = 5, RegiaoId = 2, Regiao = r2, Descricao = "Barragem Taquaras", DataCadastro = new DateTime(2019, 11, 9)
            };
            Barragem b6 = new Barragem {
                Id = 6, RegiaoId = 3, Regiao = r3, Descricao = "Barragem Menezes II", DataCadastro = new DateTime(2019, 11, 23)
            };

            Sensor s1 = new Sensor {
                Id = 1, BarragemId = 1, Barragem = b1, Descricao = "Nível de Água", DataCadastro = new DateTime(2019, 10, 7)
            };
            Sensor s2 = new Sensor {
                Id = 2, BarragemId = 1, Barragem = b1, Descricao = "Pressão da Água", DataCadastro = new DateTime(2019, 10, 7)
            };
            Sensor s4 = new Sensor {
                Id = 3, BarragemId = 1, Barragem = b1, Descricao = "Inclinômetros", DataCadastro = new DateTime(2019, 10, 7)
            };

            Sensor s6 = new Sensor {
                Id = 4, BarragemId = 2, Barragem = b2, Descricao = "Nível de Água", DataCadastro = new DateTime(2019, 10, 9)
            };
            Sensor s7 = new Sensor {
                Id = 5, BarragemId = 2, Barragem = b2, Descricao = "Pressão da Água", DataCadastro = new DateTime(2019, 10, 9)
            };
            Sensor s9 = new Sensor {
                Id = 6, BarragemId = 2, Barragem = b2, Descricao = "Inclinômetros", DataCadastro = new DateTime(2019, 10, 9)
            };
            Sensor s10 = new Sensor {
                Id = 7, BarragemId = 2, Barragem = b2, Descricao = "Sensores termais (Vazamento)", DataCadastro = new DateTime(2019, 10, 9)
            };

            Sensor s11 = new Sensor {
                Id = 8, BarragemId = 3, Barragem = b3, Descricao = "Nível de Água", DataCadastro = new DateTime(2019, 10, 10)
            };
            Sensor s12 = new Sensor {
                Id = 9, BarragemId = 3, Barragem = b3, Descricao = "Pressão da Água", DataCadastro = new DateTime(2019, 10, 10)
            };
            Sensor s13 = new Sensor {
                Id = 10, BarragemId = 3, Barragem = b3, Descricao = "Piezómetro (Compressibilidade dos líquidos)", DataCadastro = new DateTime(2019, 10, 10)
            };
            Sensor s14 = new Sensor {
                Id = 11, BarragemId = 3, Barragem = b3, Descricao = "Inclinômetros", DataCadastro = new DateTime(2019, 10, 10)
            };
            Sensor s15 = new Sensor {
                Id = 12, BarragemId = 3, Barragem = b3, Descricao = "Sensores termais (Vazamento)", DataCadastro = new DateTime(2019, 10, 10)
            };

            Sensor s16 = new Sensor {
                Id = 13, BarragemId = 4, Barragem = b4, Descricao = "Nível de Água", DataCadastro = new DateTime(2019, 11, 5)
            };
            Sensor s17 = new Sensor {
                Id = 14, BarragemId = 4, Barragem = b4, Descricao = "Pressão da Água", DataCadastro = new DateTime(2019, 11, 5)
            };
            Sensor s18 = new Sensor {
                Id = 15, BarragemId = 4, Barragem = b4, Descricao = "Piezómetro (Compressibilidade dos líquidos)", DataCadastro = new DateTime(2019, 11, 5)
            };
            Sensor s19 = new Sensor {
                Id = 16, BarragemId = 4, Barragem = b4, Descricao = "Inclinômetros", DataCadastro = new DateTime(2019, 11, 5)
            };

            Sensor s21 = new Sensor {
                Id = 17, BarragemId = 5, Barragem = b5, Descricao = "Nível de Água", DataCadastro = new DateTime(2019, 11, 9)
            };
            Sensor s25 = new Sensor {
                Id = 18, BarragemId = 5, Barragem = b5, Descricao = "Sensores termais (Vazamento)", DataCadastro = new DateTime(2019, 11, 9)
            };

            Sensor s27 = new Sensor {
                Id = 19, BarragemId = 6, Barragem = b6, Descricao = "Pressão da Água", DataCadastro = new DateTime(2019, 11, 23)
            };
            Sensor s28 = new Sensor {
                Id = 20, BarragemId = 6, Barragem = b6, Descricao = "Piezómetro (Compressibilidade dos líquidos)", DataCadastro = new DateTime(2019, 11, 23)
            };
            Sensor s29 = new Sensor {
                Id = 21, BarragemId = 6, Barragem = b6, Descricao = "Inclinômetros", DataCadastro = new DateTime(2019, 11, 23)
            };
            Sensor s30 = new Sensor {
                Id = 22, BarragemId = 6, Barragem = b6, Descricao = "Sensores termais (Vazamento)", DataCadastro = new DateTime(2019, 11, 23)
            };

            SensorHistorico sh1 = new SensorHistorico {
                Id = 1, Sensor = s1, Data = new DateTime(2019, 11, 14, 10, 15, 25), Status = SensorStatus.Verde
            };
            SensorHistorico sh2 = new SensorHistorico {
                Id = 2, Sensor = s1, Data = new DateTime(2019, 11, 14, 10, 19, 44), Status = SensorStatus.Verde
            };
            SensorHistorico sh3 = new SensorHistorico {
                Id = 3, Sensor = s2, Data = new DateTime(2019, 11, 14, 9, 15, 25), Status = SensorStatus.Verde
            };
            SensorHistorico sh4 = new SensorHistorico {
                Id = 4, Sensor = s2, Data = new DateTime(2019, 11, 14, 10, 04, 13), Status = SensorStatus.Amarelo
            };
            SensorHistorico sh5 = new SensorHistorico {
                Id = 5, Sensor = s4, Data = new DateTime(2019, 11, 15, 05, 44, 01), Status = SensorStatus.Amarelo
            };
            SensorHistorico sh6 = new SensorHistorico {
                Id = 6, Sensor = s4, Data = new DateTime(2019, 11, 15, 09, 47, 9), Status = SensorStatus.Amarelo
            };
            SensorHistorico sh7 = new SensorHistorico {
                Id = 7, Sensor = s4, Data = new DateTime(2019, 11, 15, 14, 04, 19), Status = SensorStatus.Verde
            };
            SensorHistorico sh8 = new SensorHistorico {
                Id = 8, Sensor = s6, Data = new DateTime(2019, 11, 14, 07, 15, 25), Status = SensorStatus.Verde
            };
            SensorHistorico sh9 = new SensorHistorico {
                Id = 9, Sensor = s6, Data = new DateTime(2019, 11, 14, 08, 19, 44), Status = SensorStatus.Verde
            };
            SensorHistorico sh10 = new SensorHistorico {
                Id = 10, Sensor = s6, Data = new DateTime(2019, 11, 14, 09, 04, 44), Status = SensorStatus.Verde
            };
            SensorHistorico sh11 = new SensorHistorico {
                Id = 11, Sensor = s7, Data = new DateTime(2019, 11, 14, 9, 15, 25), Status = SensorStatus.Verde
            };
            SensorHistorico sh12 = new SensorHistorico {
                Id = 12, Sensor = s7, Data = new DateTime(2019, 11, 14, 10, 19, 44), Status = SensorStatus.Amarelo
            };
            SensorHistorico sh13 = new SensorHistorico {
                Id = 13, Sensor = s9, Data = new DateTime(2019, 11, 15, 11, 44, 01), Status = SensorStatus.Vermelho
            };
            SensorHistorico sh14 = new SensorHistorico {
                Id = 14, Sensor = s9, Data = new DateTime(2019, 11, 15, 11, 47, 9), Status = SensorStatus.Amarelo
            };
            SensorHistorico sh15 = new SensorHistorico {
                Id = 15, Sensor = s9, Data = new DateTime(2019, 11, 15, 12, 04, 19), Status = SensorStatus.Amarelo
            };
            SensorHistorico sh16 = new SensorHistorico {
                Id = 16, Sensor = s10, Data = new DateTime(2019, 11, 14, 3, 15, 25), Status = SensorStatus.Verde
            };
            SensorHistorico sh17 = new SensorHistorico {
                Id = 17, Sensor = s10, Data = new DateTime(2019, 11, 14, 10, 19, 44), Status = SensorStatus.Verde
            };
            SensorHistorico sh18 = new SensorHistorico {
                Id = 18, Sensor = s11, Data = new DateTime(2019, 11, 13, 2, 15, 25), Status = SensorStatus.Verde
            };
            SensorHistorico sh19 = new SensorHistorico {
                Id = 19, Sensor = s11, Data = new DateTime(2019, 11, 13, 10, 44, 44), Status = SensorStatus.Verde
            };
            SensorHistorico sh20 = new SensorHistorico {
                Id = 20, Sensor = s12, Data = new DateTime(2019, 11, 13, 9, 17, 25), Status = SensorStatus.Verde
            };
            SensorHistorico sh21 = new SensorHistorico {
                Id = 21, Sensor = s12, Data = new DateTime(2019, 11, 13, 10, 24, 44), Status = SensorStatus.Verde
            };
            SensorHistorico sh22 = new SensorHistorico {
                Id = 22, Sensor = s13, Data = new DateTime(2019, 11, 13, 7, 27, 25), Status = SensorStatus.Verde
            };
            SensorHistorico sh23 = new SensorHistorico {
                Id = 23, Sensor = s13, Data = new DateTime(2019, 11, 13, 10, 09, 44), Status = SensorStatus.Verde
            };
            SensorHistorico sh24 = new SensorHistorico {
                Id = 24, Sensor = s14, Data = new DateTime(2019, 11, 13, 08, 22, 25), Status = SensorStatus.Verde
            };
            SensorHistorico sh25 = new SensorHistorico {
                Id = 25, Sensor = s14, Data = new DateTime(2019, 11, 13, 10, 01, 44), Status = SensorStatus.Verde
            };
            SensorHistorico sh27 = new SensorHistorico {
                Id = 26, Sensor = s15, Data = new DateTime(2019, 11, 13, 9, 00, 25), Status = SensorStatus.Verde
            };
            SensorHistorico sh26 = new SensorHistorico {
                Id = 27, Sensor = s15, Data = new DateTime(2019, 11, 13, 10, 19, 44), Status = SensorStatus.Verde
            };
            SensorHistorico sh28 = new SensorHistorico {
                Id = 28, Sensor = s16, Data = new DateTime(2019, 11, 17, 9, 00, 25), Status = SensorStatus.Verde
            };
            SensorHistorico sh29 = new SensorHistorico {
                Id = 29, Sensor = s16, Data = new DateTime(2019, 11, 17, 10, 19, 44), Status = SensorStatus.Verde
            };
            SensorHistorico sh30 = new SensorHistorico {
                Id = 30, Sensor = s17, Data = new DateTime(2019, 11, 17, 9, 00, 25), Status = SensorStatus.Verde
            };
            SensorHistorico sh31 = new SensorHistorico {
                Id = 31, Sensor = s17, Data = new DateTime(2019, 11, 17, 10, 19, 44), Status = SensorStatus.Verde
            };
            SensorHistorico sh32 = new SensorHistorico {
                Id = 32, Sensor = s18, Data = new DateTime(2019, 11, 17, 5, 00, 25), Status = SensorStatus.Verde
            };
            SensorHistorico sh33 = new SensorHistorico {
                Id = 33, Sensor = s18, Data = new DateTime(2019, 11, 17, 10, 19, 44), Status = SensorStatus.Verde
            };
            SensorHistorico sh34 = new SensorHistorico {
                Id = 34, Sensor = s19, Data = new DateTime(2019, 11, 17, 8, 00, 25), Status = SensorStatus.Verde
            };
            SensorHistorico sh35 = new SensorHistorico {
                Id = 35, Sensor = s19, Data = new DateTime(2019, 11, 17, 10, 19, 44), Status = SensorStatus.Verde
            };
            SensorHistorico sh36 = new SensorHistorico {
                Id = 36, Sensor = s21, Data = new DateTime(2019, 11, 17, 9, 00, 25), Status = SensorStatus.Verde
            };
            SensorHistorico sh37 = new SensorHistorico {
                Id = 37, Sensor = s21, Data = new DateTime(2019, 11, 17, 10, 19, 44), Status = SensorStatus.Verde
            };
            SensorHistorico sh38 = new SensorHistorico {
                Id = 38, Sensor = s25, Data = new DateTime(2019, 11, 15, 15, 00, 25), Status = SensorStatus.Verde
            };
            SensorHistorico sh39 = new SensorHistorico {
                Id = 39, Sensor = s25, Data = new DateTime(2019, 11, 15, 18, 19, 44), Status = SensorStatus.Verde
            };
            SensorHistorico sh40 = new SensorHistorico {
                Id = 40, Sensor = s27, Data = new DateTime(2019, 11, 15, 14, 00, 25), Status = SensorStatus.Verde
            };
            SensorHistorico sh41 = new SensorHistorico {
                Id = 41, Sensor = s27, Data = new DateTime(2019, 11, 15, 18, 19, 44), Status = SensorStatus.Verde
            };
            SensorHistorico sh42 = new SensorHistorico {
                Id = 42, Sensor = s28, Data = new DateTime(2019, 11, 15, 9, 50, 25), Status = SensorStatus.Verde
            };
            SensorHistorico sh43 = new SensorHistorico {
                Id = 43, Sensor = s28, Data = new DateTime(2019, 11, 15, 12, 44, 44), Status = SensorStatus.Verde
            };
            SensorHistorico sh44 = new SensorHistorico {
                Id = 44, Sensor = s29, Data = new DateTime(2019, 11, 13, 15, 43, 25), Status = SensorStatus.Verde
            };
            SensorHistorico sh45 = new SensorHistorico {
                Id = 45, Sensor = s29, Data = new DateTime(2019, 11, 13, 17, 58, 44), Status = SensorStatus.Verde
            };
            SensorHistorico sh46 = new SensorHistorico {
                Id = 46, Sensor = s30, Data = new DateTime(2019, 11, 13, 19, 10, 25), Status = SensorStatus.Verde
            };
            SensorHistorico sh47 = new SensorHistorico {
                Id = 47, Sensor = s30, Data = new DateTime(2019, 11, 13, 22, 09, 44), Status = SensorStatus.Verde
            };

            Cadastro c1 = new Cadastro {
                Id = 1, Regiao = r1, Telefone = "(31) 9999-9999"
            };
            Cadastro c2 = new Cadastro {
                Id = 2, Regiao = r1, Telefone = "(31) 9918-7788"
            };
            Cadastro c3 = new Cadastro {
                Id = 3, Regiao = r1, Telefone = "(31) 8891-4332"
            };

            Cadastro c4 = new Cadastro {
                Id = 4, Regiao = r2, Telefone = "(31) 9188-4433"
            };
            Cadastro c5 = new Cadastro {
                Id = 5, Regiao = r2, Telefone = "(31) 9911-7712"
            };

            Cadastro c6 = new Cadastro {
                Id = 6, Regiao = r3, Telefone = "(31) 9184-3322"
            };
            Cadastro c7 = new Cadastro {
                Id = 7, Regiao = r3, Telefone = "(31) 9941-3321"
            };
            Cadastro c8 = new Cadastro {
                Id = 8, Regiao = r3, Telefone = "(31) 9987-3348"
            };
            Cadastro c9 = new Cadastro {
                Id = 9, Regiao = r3, Telefone = "(31) 9917-7726"
            };

            _context.Regiao.AddRange(r1, r2, r3);

            _context.Barragem.AddRange(b1, b2, b3, b4, b5, b6);

            _context.Sensor.AddRange(
                s1, s2, s4, s6, s7, s9, s10, s11, s12, s13, s14, s15, s11, s12, s13, s14, s15,
                s16, s17, s18, s19, s21, s25, s27, s28, s29, s30);

            _context.SensorHistorico.AddRange(
                sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8, sh9, sh10, sh11, sh12, sh13, sh14, sh15, sh16, sh17,
                sh18, sh19, sh20, sh21, sh22, sh23, sh24, sh25, sh26, sh27, sh28, sh29, sh30, sh31, sh32, sh33,
                sh34, sh35, sh36, sh37, sh38, sh39, sh40, sh41, sh42, sh43, sh44, sh45, sh46, sh47);

            _context.Cadastro.AddRange(c1, c2, c3, c4, c5, c6, c7, c8, c9);

            _context.SaveChanges();
        }
Exemplo n.º 24
0
        public IHttpActionResult IncluirBarragem([FromBody] BarragemRequest barragemRequest)
        {
            Barragem barragem = BarragemLogical.IncluirBarragem(barragemRequest);

            return(Ok(barragem));
        }
Exemplo n.º 25
0
        internal int Criar(Barragem barragem, BancoDeDados banco = null)
        {
            using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco))
            {
                #region Barragem

                bancoDeDados.IniciarTransacao();

                Comando comando = bancoDeDados.CriarComando(@"
					insert into {0}crt_barragem c
					  (id, 
					   empreendimento, 
					   atividade, 
					   tid)
					values
					  ({0}seq_crt_barragem.nextval, 
					   :empreendimento, 
					   :atividade, 
					   :tid) returning id into :id"                    , EsquemaBanco);

                comando.AdicionarParametroEntrada("empreendimento", barragem.EmpreendimentoId, DbType.Int32);
                comando.AdicionarParametroEntrada("atividade", barragem.AtividadeId, DbType.Int32);
                comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual());
                comando.AdicionarParametroSaida("id", DbType.Int32);

                bancoDeDados.ExecutarNonQuery(comando);

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

                #endregion

                #region Barragem - Barragens

                foreach (var itemBarragem in barragem.Barragens)
                {
                    comando = bancoDeDados.CriarComando(@"
							insert into {0}crt_barragem_barragens
							  (id,
							   barragem,
							   quantidade,
							   finalidade,
							   especificar,
							   geometria_id,
							   geometria_tipo,
							   geometria_coord_atv_x,
							   geometria_coord_atv_y,
							   tid)
							values
							  ({0}seq_crt_barragem_barragens.nextval,
							   :barragem,
							   :quantidade,
							   :finalidade,
							   :especificar,
							   :geometria_id,
							   :geometria_tipo,
							   :geometria_coord_atv_x,
							   :geometria_coord_atv_y,
							   :tid) returning id into :id"                            , EsquemaBanco);

                    comando.AdicionarParametroEntrada("barragem", barragem.Id, DbType.Int32);
                    comando.AdicionarParametroEntrada("quantidade", itemBarragem.Quantidade, DbType.Int32);
                    comando.AdicionarParametroEntrada("finalidade", itemBarragem.FinalidadeId, DbType.Int32);
                    comando.AdicionarParametroEntrada("especificar", DbType.String, 30, itemBarragem.Especificar);
                    comando.AdicionarParametroEntrada("geometria_id", itemBarragem.CoordenadaAtividade.Id, DbType.Int32);
                    comando.AdicionarParametroEntrada("geometria_tipo", itemBarragem.CoordenadaAtividade.Tipo, DbType.Int32);
                    comando.AdicionarParametroEntrada("geometria_coord_atv_x", itemBarragem.CoordenadaAtividade.CoordX, DbType.Decimal);
                    comando.AdicionarParametroEntrada("geometria_coord_atv_y", itemBarragem.CoordenadaAtividade.CoordY, DbType.Decimal);
                    comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual());
                    comando.AdicionarParametroSaida("id", DbType.Int32);

                    bancoDeDados.ExecutarNonQuery(comando);

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

                    #region Barragem - Barragens Dados

                    foreach (var itemBarragemDados in itemBarragem.BarragensDados)
                    {
                        comando = bancoDeDados.CriarComando(@"
							insert into {0}crt_barragem_brgns_dados
							  (id,
							   barragens,
							   identificador,
							   lamina_agua,
							   volume_armazenamento,
							   outorga,
							   numero,
							   tid)
							values
							  ({0}seq_crt_barragem_brgnsdados.nextval,
							   :barragens,
							   :identificador,
							   :lamina_agua,
							   :volume_armazenamento,
							   :outorga,
							   :numero,
							   :tid)"                            , EsquemaBanco);

                        comando.AdicionarParametroEntrada("barragens", itemBarragem.Id, DbType.Int32);
                        comando.AdicionarParametroEntrada("identificador", itemBarragemDados.Identificador, DbType.Int32);
                        comando.AdicionarParametroEntrada("lamina_agua", itemBarragemDados.LaminaAgua, DbType.Decimal);
                        comando.AdicionarParametroEntrada("volume_armazenamento", itemBarragemDados.VolumeArmazenamento, DbType.Decimal);
                        comando.AdicionarParametroEntrada("outorga", itemBarragemDados.OutorgaId, DbType.Int32);
                        comando.AdicionarParametroEntrada("numero", DbType.String, 15, itemBarragemDados.Numero);
                        comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual());

                        bancoDeDados.ExecutarNonQuery(comando);
                    }

                    #endregion
                }

                #endregion

                #region Histórico

                Historico.Gerar(barragem.Id, eHistoricoArtefatoCaracterizacao.barragem, eHistoricoAcao.criar, bancoDeDados);

                #endregion

                bancoDeDados.Commit();

                return(barragem.Id);
            }
        }
Exemplo n.º 26
0
        private Barragem ObterHistorico(int id, BancoDeDados banco = null, string tid = null, bool simplificado = false)
        {
            Barragem barragem = new Barragem();
            int      hst      = 0;

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

                Comando comando = bancoDeDados.CriarComando(@"
					select hcb.id Id, 
						   hcb.empreendimento EmpreendimentoId, 
						   hcb.tid Tid
					  from {0}hst_crt_barragem hcb
					 where hcb.barragem_id = :id
					   and hcb.tid = :tid"                    , EsquemaBanco);

                comando.AdicionarParametroEntrada("id", id, DbType.Int32);
                comando.AdicionarParametroEntrada("tid", DbType.String, 36, tid);

                barragem = bancoDeDados.ObterEntity <Barragem>(comando);

                #endregion

                if (simplificado)
                {
                    return(barragem);
                }

                #region Barragem - Barragens

                comando = bancoDeDados.CriarComando(@"
					select hcbb.barragem_barragens_id Id,
						   hcbb.quantidade Quantidade,
						   hcbb.finalidade_id FinalidadeId,
						   hcbb.finalidade_texto FinalidadeTexto,
						   hcbb.especificar Especificar,
						   hcbb.identificador Identificador,
						   hcbb.lamina_agua LaminaAgua,
						   hcbb.volume_armazenamento VolumeArmazenamento,
						   hcbb.outorga_id OutorgaId,
						   hcbb.outorga_texto OutorgaTexto,
						   hcbb.numero Numero,
						   hcbb.geometria_id,
						   hcbb.geometria_tipo_id,
						   hcbb.geometria_tipo_texto,
						   hcbb.geometria_coord_atv_x,
						   hcbb.geometria_coord_atv_y,
						   hcbb.tid
					  from {0}hst_crt_barragem_barragens hcbb
					 where hcbb.barragem_id = :id
					   and hcbb.tid = :tid"                    , EsquemaBanco);

                comando.AdicionarParametroEntrada("id", hst, DbType.Int32);
                comando.AdicionarParametroEntrada("tid", DbType.String, 36, tid);

                barragem.Barragens = bancoDeDados.ObterEntityList <BarragemItem>(comando, (IDataReader reader, BarragemItem item) =>
                {
                    item.CoordenadaAtividade.Id        = reader.GetValue <int>("geometria_id");
                    item.CoordenadaAtividade.Tipo      = reader.GetValue <int>("geometria_tipo_id");
                    item.CoordenadaAtividade.TipoTexto = reader.GetValue <string>("geometria_tipo_texto");
                    item.CoordenadaAtividade.CoordX    = reader.GetValue <decimal>("geometria_coord_atv_x");
                    item.CoordenadaAtividade.CoordX    = reader.GetValue <decimal>("geometria_coord_atv_y");
                });

                #region Barragem - Barragens Dados

                foreach (var item in barragem.Barragens)
                {
                    comando = bancoDeDados.CriarComando(@"
					select hcbb.barragens_dados_id Id,						   
						   hcbb.identificador Identificador,
						   hcbb.lamina_agua LaminaAgua,
						   hcbb.volume_armazenamento VolumeArmazenamento,
						   hcbb.outorga_id OutorgaId,
						   hcbb.outorga_texto OutorgaTexto,
						   hcbb.numero Numero,
						   hcbb.tid
					  from {0}hst_crt_brgm_brgns_dados hcbb
					 where hcbb.barragens_id = :id
					   and hcbb.tid = :tid order by hcbb.identificador"                    , EsquemaBanco);

                    comando.AdicionarParametroEntrada("id", item.Id, DbType.Int32);

                    item.BarragensDados = bancoDeDados.ObterEntityList <BarragemDadosItem>(comando);
                }

                #endregion

                #endregion
            }

            return(barragem);
        }
Exemplo n.º 27
0
        internal void Editar(Barragem barragem, BancoDeDados banco = null)
        {
            using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco))
            {
                #region Barragem

                bancoDeDados.IniciarTransacao();

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

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

                bancoDeDados.ExecutarNonQuery(comando);

                #endregion

                #region Barragem - Barragens

                foreach (var item in barragem.Barragens)
                {
                    comando = bancoDeDados.CriarComando("delete from {0}crt_barragem_brgns_dados t ", EsquemaBanco);
                    comando.DbCommand.CommandText += String.Format("where t.barragens = :barragem{0}",
                                                                   comando.AdicionarNotIn("and", "t.id", DbType.Int32, item.BarragensDados.Select(x => x.IdRelacionamento).ToList()));
                    comando.AdicionarParametroEntrada("barragem", item.Id, DbType.Int32);

                    bancoDeDados.ExecutarNonQuery(comando);
                }

                comando = bancoDeDados.CriarComando("delete from {0}crt_barragem_barragens t ", EsquemaBanco);
                comando.DbCommand.CommandText += String.Format("where t.barragem = :barragem{0}",
                                                               comando.AdicionarNotIn("and", "t.id", DbType.Int32, barragem.Barragens.Select(x => x.IdRelacionamento).ToList()));
                comando.AdicionarParametroEntrada("barragem", barragem.Id, DbType.Int32);

                bancoDeDados.ExecutarNonQuery(comando);

                foreach (var itemBarragem in barragem.Barragens)
                {
                    if (itemBarragem.Id > 0)
                    {
                        comando = bancoDeDados.CriarComando(@"
							update {0}crt_barragem_barragens t
							   set t.quantidade            = :quantidade,
								   t.finalidade            = :finalidade,
								   t.especificar           = :especificar,
								   t.geometria_id          = :geometria_id,
								   t.geometria_tipo        = :geometria_tipo,
								   t.geometria_coord_atv_x = :geometria_coord_atv_x,
								   t.geometria_coord_atv_y = :geometria_coord_atv_y,
								   t.tid				   = :tid
							 where t.id = :id "                            , EsquemaBanco);

                        comando.AdicionarParametroEntrada("id", itemBarragem.Id, DbType.Int32);
                    }
                    else
                    {
                        comando = bancoDeDados.CriarComando(@"
							insert into {0}crt_barragem_barragens
							  (id,
							   barragem,
							   quantidade,
							   finalidade,
							   especificar,
							   geometria_id,
							   geometria_tipo,
							   geometria_coord_atv_x,
							   geometria_coord_atv_y,
							   tid)
							values
							  ({0}seq_crt_barragem_barragens.nextval,
							   :barragem,
							   :quantidade,
							   :finalidade,
							   :especificar,
							   :geometria_id,
							   :geometria_tipo,
							   :geometria_coord_atv_x,
							   :geometria_coord_atv_y,
							   :tid) returning id into :id"                            , EsquemaBanco);

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

                    comando.AdicionarParametroEntrada("quantidade", itemBarragem.Quantidade, DbType.Int32);
                    comando.AdicionarParametroEntrada("finalidade", itemBarragem.FinalidadeId, DbType.Int32);
                    comando.AdicionarParametroEntrada("especificar", DbType.String, 30, itemBarragem.Especificar);
                    comando.AdicionarParametroEntrada("geometria_id", itemBarragem.CoordenadaAtividade.Id, DbType.Int32);
                    comando.AdicionarParametroEntrada("geometria_tipo", itemBarragem.CoordenadaAtividade.Tipo, DbType.Int32);
                    comando.AdicionarParametroEntrada("geometria_coord_atv_x", itemBarragem.CoordenadaAtividade.CoordX, DbType.Decimal);
                    comando.AdicionarParametroEntrada("geometria_coord_atv_y", itemBarragem.CoordenadaAtividade.CoordY, DbType.Decimal);
                    comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual());

                    bancoDeDados.ExecutarNonQuery(comando);

                    itemBarragem.Id = itemBarragem.Id > 0 ? itemBarragem.Id : Convert.ToInt32(comando.ObterValorParametro("id"));

                    #region Barragem - Barragens Dados

                    foreach (var itemBarragemDados in itemBarragem.BarragensDados)
                    {
                        if (itemBarragemDados.Id > 0)
                        {
                            comando = bancoDeDados.CriarComando(@"
							update {0}crt_barragem_brgns_dados t
							   set t.identificador         = :identificador,
								   t.lamina_agua           = :lamina_agua,
								   t.volume_armazenamento  = :volume_armazenamento,
								   t.outorga               = :outorga,
								   t.numero                = :numero,
								   t.tid				   = :tid
							 where t.id = :id"                            , EsquemaBanco);

                            comando.AdicionarParametroEntrada("id", itemBarragemDados.Id, DbType.Int32);
                        }
                        else
                        {
                            comando = bancoDeDados.CriarComando(@"
								insert into {0}crt_barragem_brgns_dados
								  (id,
								   barragens,
								   identificador,
								   lamina_agua,
								   volume_armazenamento,
								   outorga,
								   numero,
								   tid)
								values
								  ({0}seq_crt_barragem_brgnsdados.nextval,
								   :barragens,
								   :identificador,
								   :lamina_agua,
								   :volume_armazenamento,
								   :outorga,
								   :numero,
								   :tid)"                                , EsquemaBanco);

                            comando.AdicionarParametroEntrada("barragens", itemBarragem.Id, DbType.Int32);
                        }

                        comando.AdicionarParametroEntrada("identificador", itemBarragemDados.Identificador, DbType.Int32);
                        comando.AdicionarParametroEntrada("lamina_agua", itemBarragemDados.LaminaAguaToDecimal, DbType.Decimal);
                        comando.AdicionarParametroEntrada("volume_armazenamento", itemBarragemDados.VolumeArmazenamentoToDecimal, DbType.Decimal);
                        comando.AdicionarParametroEntrada("outorga", itemBarragemDados.OutorgaId, DbType.Int32);
                        comando.AdicionarParametroEntrada("numero", DbType.String, 15, itemBarragemDados.Numero);
                        comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual());

                        bancoDeDados.ExecutarNonQuery(comando);
                    }

                    #endregion
                }

                #endregion

                #region Histórico

                Historico.Gerar(barragem.Id, eHistoricoArtefatoCaracterizacao.barragem, eHistoricoAcao.atualizar, bancoDeDados);

                #endregion

                bancoDeDados.Commit();
            }
        }
Exemplo n.º 28
0
        internal Barragem Obter(int id, BancoDeDados banco = null, bool simplificado = false)
        {
            Barragem barragem = new Barragem();

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

                Comando comando = bancoDeDados.CriarComando(@"
					select cb.id Id, 
						   cb.empreendimento EmpreendimentoId,
						   cb.tid Tid
					  from {0}crt_barragem cb
					 where cb.id = :id"                    , EsquemaBanco);

                comando.AdicionarParametroEntrada("id", id, DbType.Int32);

                barragem = bancoDeDados.ObterEntity <Barragem>(comando);

                #endregion

                if (simplificado)
                {
                    return(barragem);
                }

                #region Barragem - Barragens

                comando = bancoDeDados.CriarComando(@"
					select cbb.id Id,
						   cbb.id IdRelacionamento,
						   cbb.quantidade Quantidade,
						   cbb.finalidade FinalidadeId,
						   lcbf.texto FinalidadeTexto,
						   cbb.especificar Especificar,
						   cbb.geometria_id,
						   cbb.geometria_tipo geometria_tipo_id,
						   lcgt.texto geometria_tipo_texto,
						   cbb.geometria_coord_atv_x,
						   cbb.geometria_coord_atv_y,
						   cbb.tid
					  from {0}crt_barragem_barragens      cbb,
						   {0}lov_crt_barragem_finalidade lcbf,
						   {0}lov_crt_geometria_tipo      lcgt
					 where cbb.finalidade = lcbf.id(+)
					   and cbb.geometria_tipo = lcgt.id(+)
					   and cbb.barragem = :id"                    , EsquemaBanco);

                comando.AdicionarParametroEntrada("id", id, DbType.Int32);

                barragem.Barragens = bancoDeDados.ObterEntityList <BarragemItem>(comando, (IDataReader reader, BarragemItem item) =>
                {
                    item.CoordenadaAtividade.Id        = reader.GetValue <int>("geometria_id");
                    item.CoordenadaAtividade.Tipo      = reader.GetValue <int>("geometria_tipo_id");
                    item.CoordenadaAtividade.TipoTexto = reader.GetValue <string>("geometria_tipo_texto");
                    item.CoordenadaAtividade.CoordX    = reader.GetValue <decimal>("geometria_coord_atv_x");
                    item.CoordenadaAtividade.CoordY    = reader.GetValue <decimal>("geometria_coord_atv_y");
                });

                #region Barragem - Barragens Dados

                foreach (var item in barragem.Barragens)
                {
                    comando = bancoDeDados.CriarComando(@"
					select cbb.id Id,
						   cbb.id IdRelacionamento,
						   cbb.identificador Identificador,
						   cbb.lamina_agua LaminaAgua,
						   cbb.volume_armazenamento VolumeArmazenamento,
						   cbb.outorga OutorgaId,
						   lcbo.texto OutorgaTexto,
						   cbb.numero Numero,
						   cbb.tid Tid
					  from {0}crt_barragem_brgns_dados cbb,
						   {0}lov_crt_barragem_outorga lcbo
					 where cbb.outorga = lcbo.id(+)
					   and cbb.barragens = :id order by cbb.identificador"                    , EsquemaBanco);

                    comando.AdicionarParametroEntrada("id", item.Id, DbType.Int32);

                    item.BarragensDados = bancoDeDados.ObterEntityList <BarragemDadosItem>(comando);
                }

                #endregion

                #endregion
            }
            return(barragem);
        }