Exemplo n.º 1
0
        //Cadastra um novo analista no sistema.
        public Entities.AnalistaEntity Cadastrar(string nome, int codigoTimeSuporte)
        {
            //Consulta o time de suporte.
            var timeSuporte =
                _timeSuporteRepository.GetByCodigo(codigoTimeSuporte);

            //Valida se foi encontrado.
            ValidatorHelper.GarantirNaoNulo(timeSuporte, Mensagens.TimeSuporteNaoEncontrado);

            //Cria a entidade.
            var entity =
                new Entities.AnalistaEntity(nome, timeSuporte);

            //Adiciona a entidade no banco.
            _analistaRepository.Add(entity);

            //Retorna a entidade já com o Codigo preenchido.
            return(entity);
        }
        //Realiza a troca de time de um sistema.
        public Entities.SistemaEntity TrocarTimeSuporte(int codigo, int codigoTimeSuporte)
        {
            //Recupera o sistema.
            var sistema = _sistemaRepository.GetByCodigo(codigo);

            //Valida se foi encontrado.
            ValidatorHelper.GarantirNaoNulo(sistema, Mensagens.SistemaNaoEncontrado);

            //Recupera o time de suporte.
            var timeSuporte = _timeSuporteRepository.GetByCodigo(codigo);

            //Valida se foi encontrado.
            ValidatorHelper.GarantirNaoNulo(timeSuporte, Mensagens.TimeSuporteNaoEncontrado);

            //Realiza a troca do time.
            sistema.AlterarTimeSuporte(timeSuporte);

            //Atualiza na base de dados.
            _sistemaRepository.Update(sistema);

            return(sistema);
        }