public void Devo_Conseguir_Criar_Um_Servico_Valido()
        {
            Servico servico = new Servico("Escova", 1m);

            Assert.AreEqual(servico.Descricao, "ESCOVA");
            Assert.AreEqual(servico.Valor, 1m);
        }
        public Boolean Gravar(DTOServico dtoServicoQueVaiSerPersistido)
        {
            if (dtoServicoQueVaiSerPersistido == null)
                return false;

            Servico servico = this._repositorio.Obter(dtoServicoQueVaiSerPersistido.ID);

            if (servico == null) servico = new Servico(dtoServicoQueVaiSerPersistido.Descricao, dtoServicoQueVaiSerPersistido.Valor);
            else
            {
                servico.Descricao = dtoServicoQueVaiSerPersistido.Descricao;
                servico.Valor = dtoServicoQueVaiSerPersistido.Valor;
            }

            Servico servicoEncontradoNoBD = this._repositorio.ObterServicoPelaDescricao(dtoServicoQueVaiSerPersistido.Descricao);

            ValidadorServico validador = new ValidadorServico(servicoEncontradoNoBD);

            if (dtoServicoQueVaiSerPersistido.IsNovo()) validador.ValidarNovoServico(servico);
            else validador.ValidarServicoEmAlteracao(servico);

            this._repositorio.Salvar(servico);
            dtoServicoQueVaiSerPersistido.ID = servico.Id;

            return true;
        }
        public void Nao_Devo_Conseguir_Criar_Com_Valor_Invalido()
        {
            Servico servico;

            try {
                // Caso estiver zerado
                servico = new Servico("ESCOVA", 0);
            } catch (ExcecaoParametroInvalido ex) {
                // Caso for menor que zero
                if (ex.Message.Contains("Valor"))
                    servico = new Servico("ESCOVA", -1m);
            }
        }
        public void Nao_Devo_Conseguir_Criar_Com_Descricao_Nula()
        {
            Servico servico;

            try {
                // Caso for nula
                servico = new Servico(null, 1437.00m);
            } catch (ExcecaoParametroInvalido ex) {
                // Caso estiver vazia
                if (ex.Message.Contains("Descricao"))
                    servico = new Servico("", 1m);
            }
        }
        public void Nao_Devo_Validar_Um_Novo_Servico_Com_Descricao_De_Outro_Servico_Cadastrado()
        {
            Servico novoServico = new Servico("ESCOVA", 1m);
            Servico servicoCadastrado = ServicoStub.GetInstance(1, "escova", 2m);
            ValidadorServico validador;

            try
            {
                validador = new ValidadorServico(servicoCadastrado);
                validador.ValidarNovoServico(novoServico);
            }
            catch (ExcecaoDescricaoServicoJaCadastrada)
            {
                novoServico = new Servico("escOvA  ", 1m);
                validador = new ValidadorServico(servicoCadastrado);
                validador.ValidarNovoServico(novoServico);
            }
        }
 public ItemAtendimento(Servico servico, Decimal valorUnitario, int quantidade)
 {
     this._servico = servico;
     this.ValorUnitario = valorUnitario;
     this.Quantidade = quantidade;
 }
Exemple #7
0
 public virtual void RemoverItem(Servico servico)
 {
     try
     {
         this._itens.Remove(new ItemAtendimento(servico, 0, 0));
     }
     finally
     {
         this._acrescimoFormaPagamento = ((this.TotalValorItem * this._formaPagamento.PercentualAcrescimo) / 100);
         this._descontoFormaPagamento = ((this.TotalValorItem * this._formaPagamento.PercentualDesconto) / 100);
     }
 }
Exemple #8
0
        public virtual void AdicionarItem(Servico servico, Decimal valorUnitario, int quantidade)
        {
            if ((servico == null) || (servico.Id <= 0))
                throw new ExcecaoParametroInvalido("servico");

            if (valorUnitario <= 0)
                throw new ExcecaoParametroInvalido("valorUnitario");

            if (quantidade <= 0)
                throw new ExcecaoParametroInvalido("quantidade");

            ItemAtendimento item = new ItemAtendimento(servico, valorUnitario, quantidade);

            try
            {
                if (this._itens.Contains(item))
                {
                    ItemAtendimento itemEncontrado = this._itens.Single(i => (i.Equals(item)));

                    itemEncontrado.ValorUnitario = item.ValorUnitario;
                    itemEncontrado.Quantidade = item.Quantidade;
                    return;
                }

                this._itens.Add(item);
            }
            finally
            {
                this._acrescimoFormaPagamento = ((this.TotalValorItem * this._formaPagamento.PercentualAcrescimo) / 100);
                this._descontoFormaPagamento = ((this.TotalValorItem * this._formaPagamento.PercentualDesconto) / 100);
            }
        }
 public void Devo_Conseguir_Validar_Um_Novo_Servico_Se_Nao_Houver_Nenhum_Com_A_Mesma_Descricao_Cadastrada()
 {
     Servico novoServico  = new Servico("Escova", 1m);
     ValidadorServico validador = new ValidadorServico(null);
     validador.ValidarNovoServico(novoServico);
 }