Example #1
0
        public void InserirRiscoInventarioAmbiente(RiscoInventarioAmbienteModelo riscoInventarioAmbienteModelo)
        {
            using (var entities = databaseEntities.GetDB_LaborSafetyEntities())
            {
                using (var transaction = entities.Database.BeginTransaction())
                {
                    try
                    {
                        var inventario = new RISCO_INVENTARIO_AMBIENTE()
                        {
                            CodInventarioAmbiente   = riscoInventarioAmbienteModelo.CodInventarioAmbiente,
                            CodRiscoAmbiente        = riscoInventarioAmbienteModelo.CodRiscoAmbiente,
                            CodSeveridade           = riscoInventarioAmbienteModelo.CodSeveridade,
                            CodProbabilidade        = riscoInventarioAmbienteModelo.CodProbabilidade,
                            FonteGeradora           = riscoInventarioAmbienteModelo.FonteGeradora,
                            ProcedimentosAplicaveis = riscoInventarioAmbienteModelo.ProcedimentosAplicaveis,
                            ContraMedidas           = riscoInventarioAmbienteModelo.ContraMedidas,
                            Ativo = true
                        };

                        entities.RISCO_INVENTARIO_AMBIENTE.Add(inventario);
                        entities.SaveChanges();
                        transaction.Commit();
                    }
                    catch (Exception exception)
                    {
                        transaction.Rollback();
                        throw exception;
                    }
                }
            }
        }
Example #2
0
        public IXLCell PreencherRiscosAmbiente(IXLWorksheet planilha, RISCO_INVENTARIO_AMBIENTE riscosAmbiente, IXLCell celulaAPreencher)
        {
            var coluna = celulaAPreencher.Address.ColumnLetter;
            var risco  = riscoPersistencia.ListarRiscoPorId(riscosAmbiente.CodRiscoAmbiente);

            planilha.Cell($"{celulaAPreencher.Address.ColumnLetter}{celulaAPreencher.Address.RowNumber}").Value = risco.Nome;
            celulaAPreencher = celulaAPreencher.CellRight();

            coluna = celulaAPreencher.Address.ColumnLetter;
            var severidade = severidadePersistencia.ListarSeveridadePorId(riscosAmbiente.CodSeveridade);

            planilha.Cell($"{celulaAPreencher.Address.ColumnLetter}{celulaAPreencher.Address.RowNumber}").Value = severidade.Nome;
            celulaAPreencher = celulaAPreencher.CellRight();

            coluna = celulaAPreencher.Address.ColumnLetter;
            var probabilidade = probabilidadePersistencia.ListarProbabilidadePorId(riscosAmbiente.CodProbabilidade);

            planilha.Cell($"{celulaAPreencher.Address.ColumnLetter}{celulaAPreencher.Address.RowNumber}").Value = probabilidade.Nome;
            celulaAPreencher = celulaAPreencher.CellRight();

            coluna = celulaAPreencher.Address.ColumnLetter;
            planilha.Cell($"{celulaAPreencher.Address.ColumnLetter}{celulaAPreencher.Address.RowNumber}").Value = riscosAmbiente.FonteGeradora;
            celulaAPreencher = celulaAPreencher.CellRight();

            coluna = celulaAPreencher.Address.ColumnLetter;
            planilha.Cell($"{celulaAPreencher.Address.ColumnLetter}{celulaAPreencher.Address.RowNumber}").Value = riscosAmbiente.ProcedimentosAplicaveis;
            celulaAPreencher = celulaAPreencher.CellRight();

            // preencher EPI
            if (riscosAmbiente.EPI_RISCO_INVENTARIO_AMBIENTE.Count > 0)
            {
                string nomeEpi = "";

                coluna = celulaAPreencher.Address.ColumnLetter;
                foreach (var item in riscosAmbiente.EPI_RISCO_INVENTARIO_AMBIENTE)
                {
                    var epi = epiPersistencia.ListarEPIPorId(item.CodEPI);
                    nomeEpi += $"{epi.Nome};";
                }

                var tamanhoEpi = nomeEpi.Length;

                var nomeEpiCorrigido = nomeEpi.Substring(0, tamanhoEpi - 1);

                planilha.Cell($"{celulaAPreencher.Address.ColumnLetter}{celulaAPreencher.Address.RowNumber}").Value = nomeEpiCorrigido;
            }
            celulaAPreencher = celulaAPreencher.CellRight();

            coluna = celulaAPreencher.Address.ColumnLetter;
            planilha.Cell($"{celulaAPreencher.Address.ColumnLetter}{celulaAPreencher.Address.RowNumber}").Value = riscosAmbiente.ContraMedidas;
            celulaAPreencher = celulaAPreencher.CellRight();
            celulaAPreencher = celulaAPreencher.CellRight();
            return(celulaAPreencher);
        }
        public void EditarRiscoInventarioAmbiente(long idInventario, long idRisco)
        {
            using (DB_LaborSafetyEntities entities = new DB_LaborSafetyEntities())
            {
                RISCO_INVENTARIO_AMBIENTE inventarioAmbienteExistente = entities.RISCO_INVENTARIO_AMBIENTE.Where(invAmb => invAmb.CodInventarioAmbiente == idInventario).FirstOrDefault();
                RISCO riscoInventarioAmbienteExistente = entities.RISCO.FirstOrDefault(invAmb => invAmb.CodRisco == idRisco);

                if (inventarioAmbienteExistente == null)
                {
                    throw new KeyNotFoundException();
                }
                else if (riscoInventarioAmbienteExistente == null)
                {
                    throw new KeyNotFoundException();
                }
                else
                {
                    inventarioAmbienteExistente.CodRiscoAmbiente = idRisco;
                }

                entities.SaveChanges();
            }
        }
Example #4
0
        private INVENTARIO_AMBIENTE InserirInventarioAmbienteComLocalInstalacao(InventarioAmbienteModelo inventarioAmbienteModelo, DB_LaborSafetyEntities entities)
        {
            List <NrInventarioAmbienteModelo>    nrs    = inventarioAmbienteModelo.NR_INVENTARIO_AMBIENTE;
            List <RiscoInventarioAmbienteModelo> riscos = inventarioAmbienteModelo.RISCO_INVENTARIO_AMBIENTE;

            try
            {
                if (inventarioAmbienteModelo.LOCAL_INSTALACAO_MODELO == null)
                {
                    throw new Exception("Local de instalação não informado!");
                }

                INVENTARIO_AMBIENTE inventario = new INVENTARIO_AMBIENTE();

                if (string.IsNullOrEmpty(inventarioAmbienteModelo.Codigo))
                {
                    inventario = new INVENTARIO_AMBIENTE()
                    {
                        Codigo          = "IMPORTACAO",
                        CodAmbiente     = inventarioAmbienteModelo.CodAmbiente,
                        Descricao       = inventarioAmbienteModelo.Descricao,
                        ObservacaoGeral = inventarioAmbienteModelo.ObservacaoGeral,
                        RiscoGeral      = inventarioAmbienteModelo.RiscoGeral,
                        DataAtualizacao = DateTime.Now,
                        Ativo           = true
                    };
                }
                else
                {
                    inventario = new INVENTARIO_AMBIENTE()
                    {
                        Codigo          = inventarioAmbienteModelo.Codigo,
                        CodAmbiente     = inventarioAmbienteModelo.CodAmbiente,
                        Descricao       = inventarioAmbienteModelo.Descricao,
                        ObservacaoGeral = inventarioAmbienteModelo.ObservacaoGeral,
                        RiscoGeral      = inventarioAmbienteModelo.RiscoGeral,
                        DataAtualizacao = DateTime.Now,
                        Ativo           = true
                    };
                }
                entities.INVENTARIO_AMBIENTE.Add(inventario);
                entities.SaveChanges();

                long idInv = inventario.CodInventarioAmbiente;

                inventario.Codigo = $"INV_AMB - {idInv}";
                entities.SaveChanges();

                if (nrs != null)
                {
                    foreach (var nr in nrs)
                    {
                        entities.NR_INVENTARIO_AMBIENTE.Add(new NR_INVENTARIO_AMBIENTE()
                        {
                            CodInventarioAmbiente = idInv,
                            CodNR = nr.CodNR,
                            Ativo = true
                        });
                    }

                    entities.SaveChanges();
                }

                if (riscos != null)
                {
                    foreach (var risco in riscos)
                    {
                        var novoRisco = new RISCO_INVENTARIO_AMBIENTE()
                        {
                            CodInventarioAmbiente   = idInv,
                            CodRiscoAmbiente        = risco.CodRiscoAmbiente,
                            CodSeveridade           = risco.CodSeveridade,
                            CodProbabilidade        = risco.CodProbabilidade,
                            FonteGeradora           = risco.FonteGeradora,
                            ProcedimentosAplicaveis = risco.ProcedimentosAplicaveis,
                            ContraMedidas           = risco.ContraMedidas,
                            Ativo = true
                        };
                        entities.RISCO_INVENTARIO_AMBIENTE.Add(novoRisco);
                        entities.SaveChanges();

                        if (risco.EPIRiscoInventarioAmbienteModelo.Count >= 0)
                        {
                            foreach (var epi in risco.EPIRiscoInventarioAmbienteModelo)
                            {
                                entities.EPI_RISCO_INVENTARIO_AMBIENTE.Add(new EPI_RISCO_INVENTARIO_AMBIENTE()
                                {
                                    CodRiscoInventarioAmbiente = novoRisco.CodRiscoInventarioAmbiente,
                                    CodEPI = epi.CodEPI
                                });
                            }
                        }
                        entities.SaveChanges();
                    }
                }

                entities.Configuration.AutoDetectChangesEnabled = true;

                if (inventarioAmbienteModelo.LOCAL_INSTALACAO_MODELO.Count == 0)
                {
                    throw new Exception("Existem inventários sem local de instalação a serem inseridos.");
                }

                foreach (var item in inventarioAmbienteModelo.LOCAL_INSTALACAO_MODELO)
                {
                    var localEnviado = entities.LOCAL_INSTALACAO.Where(x => x.CodLocalInstalacao == item.CodLocalInstalacao).FirstOrDefault();
                    localEnviado.CodInventarioAmbiente = idInv;
                }
                entities.SaveChanges();
                entities.Configuration.AutoDetectChangesEnabled = false;

                return(inventario);
            }
            catch (Exception exception)
            {
                throw exception;
            }
        }
        public INVENTARIO_AMBIENTE InserirPorEdicao(InventarioAmbienteModelo inventarioAmbienteModelo, DB_LaborSafetyEntities entities)
        {
            List <NrInventarioAmbienteModelo>    nrs    = inventarioAmbienteModelo.NR_INVENTARIO_AMBIENTE;
            List <RiscoInventarioAmbienteModelo> riscos = inventarioAmbienteModelo.RISCO_INVENTARIO_AMBIENTE;

            try
            {
                if (entities == null)
                {
                    entities = new DB_LaborSafetyEntities();
                }

                entities.Configuration.AutoDetectChangesEnabled = false;

                DesativarInventarioPorCodigo(inventarioAmbienteModelo.Codigo, entities);

                var inventario = new INVENTARIO_AMBIENTE()
                {
                    Codigo          = inventarioAmbienteModelo.Codigo,
                    CodAmbiente     = inventarioAmbienteModelo.CodAmbiente,
                    Descricao       = inventarioAmbienteModelo.Descricao,
                    ObservacaoGeral = inventarioAmbienteModelo.ObservacaoGeral,
                    RiscoGeral      = inventarioAmbienteModelo.RiscoGeral,
                    DataAtualizacao = DateTime.Now,
                    Ativo           = true
                };

                entities.INVENTARIO_AMBIENTE.Add(inventario);
                entities.SaveChanges();

                long idInv = inventario.CodInventarioAmbiente;

                if (nrs != null)
                {
                    foreach (var nr in nrs)
                    {
                        entities.NR_INVENTARIO_AMBIENTE.Add(new NR_INVENTARIO_AMBIENTE()
                        {
                            CodInventarioAmbiente = idInv,
                            CodNR = nr.CodNR,
                            Ativo = true
                        });
                    }

                    entities.SaveChanges();
                }

                if (riscos != null)
                {
                    foreach (var risco in riscos)
                    {
                        var novoRisco = new RISCO_INVENTARIO_AMBIENTE()
                        {
                            CodInventarioAmbiente   = idInv,
                            CodRiscoAmbiente        = risco.CodRiscoAmbiente,
                            CodSeveridade           = risco.CodSeveridade,
                            CodProbabilidade        = risco.CodProbabilidade,
                            FonteGeradora           = risco.FonteGeradora,
                            ProcedimentosAplicaveis = risco.ProcedimentosAplicaveis,
                            ContraMedidas           = risco.ContraMedidas,
                            Ativo = true
                        };
                        entities.RISCO_INVENTARIO_AMBIENTE.Add(novoRisco);
                        entities.SaveChanges();

                        if (risco.EPIRiscoInventarioAmbienteModelo.Count >= 0)
                        {
                            foreach (var epi in risco.EPIRiscoInventarioAmbienteModelo)
                            {
                                entities.EPI_RISCO_INVENTARIO_AMBIENTE.Add(new EPI_RISCO_INVENTARIO_AMBIENTE()
                                {
                                    CodRiscoInventarioAmbiente = novoRisco.CodRiscoInventarioAmbiente,
                                    CodEPI = epi.CodEPI
                                });
                            }
                        }
                        entities.SaveChanges();
                    }
                }

                if (inventarioAmbienteModelo.LOCAL_INSTALACAO_MODELO != null)
                {
                    foreach (var li in inventarioAmbienteModelo.LOCAL_INSTALACAO_MODELO)
                    {
                        var localEnviado = entities.LOCAL_INSTALACAO.Where(x => x.CodLocalInstalacao == li.CodLocalInstalacao).FirstOrDefault();
                        localEnviado.CodInventarioAmbiente = idInv;
                    }
                    entities.ChangeTracker.DetectChanges();
                    entities.SaveChanges();
                }

                return(inventario);
            }

            catch (Exception exception)
            {
                throw exception;
            }
            finally
            {
                entities.Configuration.AutoDetectChangesEnabled = true;
            }
        }