public void AlterarPublicoAlvo(EPublicoAlvo novoPublicoAlvo)
        {
            ValidacaoBuilder
            .CriarNovo()
            .SeEnumForInvalido(novoPublicoAlvo, Resources.PublicoAlvoInvalido)
            .Build();

            PublicoAlvo = novoPublicoAlvo;
        }
        public void AlterarCargaHoraria(int novaCargaHoraria)
        {
            ValidacaoBuilder
            .CriarNovo()
            .SeMenorOuIgualZero(novaCargaHoraria, Resources.CargaHorariaInvalida)
            .Build();

            CargaHoraria = novaCargaHoraria;
        }
        public void AlterarValor(decimal novoValor)
        {
            ValidacaoBuilder
            .CriarNovo()
            .SeMenorOuIgualZero(novoValor, Resources.ValorInvalido)
            .Build();

            Valor = novoValor;
        }
        public void AlterarNome(string novoNome)
        {
            ValidacaoBuilder
            .CriarNovo()
            .SeEmBrancoOuNull(novoNome, Resources.NomeInvalido)
            .Build();

            Nome = novoNome;
        }
        public Curso(string nome, string descricao, int cargaHoraria, EPublicoAlvo publicoAlvo, decimal valor)
        {
            ValidacaoBuilder
            .CriarNovo()
            .SeEmBrancoOuNull(nome, Resources.NomeInvalido)
            .SeMenorOuIgualZero(cargaHoraria, Resources.CargaHorariaInvalida)
            .SeMenorOuIgualZero(valor, Resources.ValorInvalido)
            .SeEnumForInvalido(publicoAlvo, Resources.PublicoAlvoInvalido)
            .Build();

            Nome         = nome;
            Descricao    = descricao;
            CargaHoraria = cargaHoraria;
            PublicoAlvo  = publicoAlvo;
            Valor        = valor;
        }
Пример #6
0
        public async Task <bool> Armazenar(CursoDTO cursoDTO)
        {
            var cursoCadastradoComEsteNome = await _repository.BuscarPorNome(cursoDTO.Nome);

            var nomeIndisponivel = cursoCadastradoComEsteNome != null &&
                                   cursoCadastradoComEsteNome.Id != cursoDTO.Id;

            ValidacaoBuilder
            .CriarNovo()
            .Se(nomeIndisponivel, Resources.NomeJaCadastrado)
            .Build();

            if (cursoDTO.Id > 0)
            {
                var curso = await _repository.BuscarPorId(cursoDTO.Id);

                curso.AlterarCargaHoraria(cursoDTO.CargaHoraria);
                curso.AlterarDescricao(cursoDTO.Descricao);
                curso.AlterarNome(cursoDTO.Nome);
                curso.AlterarPublicoAlvo(cursoDTO.PublicoAlvo);
                curso.AlterarValor(cursoDTO.Valor);
                await _repository.Commit();

                return(true);
            }
            else
            {
                var curso = _adapter.Parse(cursoDTO);
                await _repository.Adicionar(curso);

                await _repository.Commit();

                cursoDTO.Id = curso.Id;
                return(true);
            }
        }