예제 #1
0
        public void Armazenar(CursoDTO cursoDTO)
        {
            var cursoJaSalvo = _cursoRepositorio.ObeterPeloNome(cursoDTO.Nome);

            ValidadorDeRegra.Novo()
            .Quando(cursoJaSalvo != null && cursoJaSalvo.Id != cursoDTO.Id, Resource.NomeCursoJaExiste)
            .DispararExcecaoSeExistir();

            var publicoAlvo = _conversorDePublicoAlvo.Converter(cursoDTO.PublicoAlvo);

            var curso = new Curso(cursoDTO.Nome,
                                  cursoDTO.CargaHoraria,
                                  publicoAlvo,
                                  cursoDTO.Valor,
                                  cursoDTO.Descricao);

            if (cursoDTO.Id > 0)
            {
                curso = _cursoRepositorio.ObterPorId(cursoDTO.Id);
                curso.AlterarNome(cursoDTO.Nome);
                curso.AlterarCargaHoraria(cursoDTO.CargaHoraria);
                curso.AlterarValor(cursoDTO.Valor);
            }
            else
            {
                _cursoRepositorio.Adicionar(curso);
            }
        }
예제 #2
0
        public void Armazenar(CursoDTO cursoDTO)
        {
            var cursoJaSalvo = _cursoRepositorio.ObterPeloNome(cursoDTO.Nome);

            if (cursoJaSalvo != null)
            {
                throw new ArgumentException("Nomde do curso já existe");
            }


            if (!System.Enum.TryParse <EnumPublicoAlvo>(cursoDTO.PublicoAlvo, out var publicoAlvo))
            {
                throw new ArgumentException("Publico Alvo inválido!");
            }

            var curso = new Curso(cursoDTO.Nome, cursoDTO.Descricao, cursoDTO.CargaHoraria,
                                  publicoAlvo, cursoDTO.Valor);

            _cursoRepositorio.Adicionar(curso);
        }
예제 #3
0
        public void Armazenar(CursoDTO cursoDTO)
        {
            var cursoJaSalvo = _cursoRepositorioMock.ObterPeloNome(cursoDTO.Nome);

            if (cursoJaSalvo != null)
            {
                throw new ArgumentException("Nome do Curso ja consta no Banco de Dados");
            }

            Enum.TryParse <PublicoAlvo>(cursoDTO.PublicoAlvo, out var publicoAlvo);

            if (publicoAlvo == null)
            {
                throw new ArgumentException("Publico Alvo Invalido!");
            }

            var curso = new Curso(cursoDTO.Nome, cursoDTO.Descricao, cursoDTO.CargaHoraria, publicoAlvo, cursoDTO.Valor);

            _cursoRepositorioMock.Adicionar(curso);
        }