Ejemplo n.º 1
0
 private void ValidarSeQuadraPertenceEmpresa(Quadra quadra)
 {
     if (!QuadraPertenceEmpresa(quadra))
     {
         throw new DomainException($"A quadra informada não pertence a empresa '{RazaoSocial}'.");
     }
 }
Ejemplo n.º 2
0
        public void AdicionarQuadra(Quadra quadra)
        {
            quadra.Validate();

            if (QuadraPertenceEmpresa(quadra))
            {
                throw new DomainException($"A quadra informada ja pertence a empresa '{RazaoSocial}'");
            }

            quadra.AssociarEmpresaProprietaria(Id);
            _quadras.Add(quadra);
        }
Ejemplo n.º 3
0
        public void ReativarQuadra(Quadra quadra)
        {
            quadra.Validate();

            if (quadra.Ativo)
            {
                throw new DomainException("A quadra informada ja está ativa.");
            }

            ValidarSeQuadraPertenceEmpresa(quadra);

            Quadra quadraExistente = _quadras.SingleOrDefault(q => q.Id.Equals(quadra.Id));

            quadraExistente.Ativar();
        }
Ejemplo n.º 4
0
        public void RetirarQuadraDeManutencao(Quadra quadra)
        {
            quadra.Validate();

            if (!quadra.EmManutencao)
            {
                throw new DomainException("A quadra não se encontra em manutenção.");
            }

            ValidarSeQuadraPertenceEmpresa(quadra);

            Quadra quadraExistente = _quadras.SingleOrDefault(q => q.Id.Equals(quadra.Id));

            quadra.TornarQuadraProntaPraUso();
        }
Ejemplo n.º 5
0
        public void ColocarQuadraEmManutencao(Quadra quadra)
        {
            quadra.Validate();

            if (quadra.EmManutencao)
            {
                throw new DomainException("A quadra já se encontra em manutenção.");
            }

            ValidarSeQuadraPertenceEmpresa(quadra);

            Quadra quadraExistente = _quadras.SingleOrDefault(q => q.Id.Equals(quadra.Id));

            quadra.ColocarQuadraEmManutencao();
        }
Ejemplo n.º 6
0
 public bool QuadraPertenceEmpresa(Quadra quadra) => _quadras.Any(q => q.Equals(quadra));