private void AdicionaOperacaoAPR(APR apr, APRItemSAPModelo item, DadosOperacao dadosOperacao, DB_APRPTEntities entities) { //TODO: É NECESSÁRIO APAGAR TODAS AS OPERACOES E INSERIR DE NOVO OPERACAO_APR operacao = new OPERACAO_APR(); operacao.CodAPR = apr.CodAPR; operacao.CodStatusAPR = (long)Constantes.StatusAPR.Criado; operacao.Codigo = item.Operacao; operacao.CodLI = dadosOperacao.CodLI; operacao.CodDisciplina = dadosOperacao.CodDisciplina; operacao.CodAtvPadrao = dadosOperacao.CodAtividadePadrao; operacao.Ativo = true; apr.OPERACAO_APR.Add(operacao); //Salva a operação no APR operacaoAprPersistencia.InsereOuEditaOperacaoAPR(apr.CodAPR, operacao, entities); //Salva os riscos //Riscos de Ambiente aprPersistencia.InserirRiscosAmbienteAPR(apr.CodAPR, dadosOperacao.CodLI, entities); aprPersistencia.InserirRiscosAtividadeAPR(apr.CodAPR, dadosOperacao.CodLI, dadosOperacao.CodDisciplina, dadosOperacao.CodAtividadePadrao, entities); }
private DadosOperacao VerificaValoresNaBase(APRItemSAPModelo item, DB_APRPTEntities entities) { DadosOperacao result = new DadosOperacao(); //Verifica se o local de instalação existe na base var localExistente = this.localInstalacaoPersistencia.ListarLocalInstalacaoPorNome(item.Local_Instalacao_Operacao, entities); if (localExistente == null) { throw new Exception($"O local informado para a ordem-operação {item.Numero_Ordem}-{item.Operacao} não existe na base de dados"); } else { result.CodLI = localExistente.CodLocalInstalacao; } //Verifica se a disciplina(Caracteristica da classe) existe na base var disciplinaExistente = this.disciplinaPersistencia.ListarDisciplinaPorNome(item.Valor_Centro_Trabalho, entities); if (disciplinaExistente == null) { throw new Exception($"A característica da classe informada para a ordem-operação {item.Numero_Ordem}-{item.Operacao} não existe na base de dados"); } else { result.CodDisciplina = disciplinaExistente.CodDisciplina; } //Verifica se a atividade padrão (Chave modelo) existe na base var atvPadraoExistente = this.atividadePadraoPersistencia.ListarAtividadePorNome(item.Chave_Modelo_Operacao, entities); if (atvPadraoExistente == null) { throw new Exception($"A atividade informada para a ordem-operação {item.Numero_Ordem}-{item.Operacao} não existe na base de dados"); } else { result.CodAtividadePadrao = atvPadraoExistente.CodAtividadePadrao; } return(result); }