예제 #1
0
        public static Restricao Create(TipoRestricao tipo, NovaRestricaoDTO dto)
        {
            switch (tipo)
            {
            case TipoRestricao.Generica:
                return(RestricaoGenerica());

            case TipoRestricao.Caber:
                return(RestricaoCaber());

            case TipoRestricao.Material:
                return(RestricaoMaterial());

            case TipoRestricao.Obrigatoria:
                return(RestricaoObrigatoria());

            case TipoRestricao.Opcional:
                return(RestricaoOpcional());

            case TipoRestricao.Ocupacao:
                return(RestricaoOcupacao(dto.Ocupacao));

            default:
                return(null);
            }
        }
예제 #2
0
        public static bool Valid(TipoRestricao tipo)
        {
            switch (tipo)
            {
            case TipoRestricao.Generica:
                return(true);

            case TipoRestricao.Caber:
                return(true);

            case TipoRestricao.Material:
                return(true);

            case TipoRestricao.Obrigatoria:
                return(true);

            case TipoRestricao.Opcional:
                return(true);

            case TipoRestricao.Ocupacao:
                return(true);

            default:
                return(false);
            }
        }
예제 #3
0
        public bool adicionarRestricao(NovaRestricaoDTO novaRestricaoDTO)
        {
            TipoRestricao tipo = novaRestricaoDTO.Restricao;
            Restricao     rest = null;

            foreach (Restricao r in Restricoes)
            {
                if (r.EdoMesmoTipo(tipo))
                {
                    rest = r;
                    break;
                }
                if ((tipo == TipoRestricao.Opcional && r.TipoRestricao == TipoRestricao.Obrigatoria) || (tipo == TipoRestricao.Obrigatoria && r.TipoRestricao == TipoRestricao.Opcional))
                {
                    rest = r;
                    break;
                }
            }
            if (rest != null)
            {
                Restricoes.Remove(rest);
            }
            Restricao nova   = RestricaoFactory.Create(tipo, novaRestricaoDTO);
            bool      valido = false;

            if (valido = nova.Validar(Base, Parte))
            {
                Restricoes.Add(nova);
            }
            return(valido);
        }
예제 #4
0
 public bool EdoMesmoTipo(TipoRestricao tipo)
 {
     return(TipoRestricao == tipo);
 }
예제 #5
0
 protected Restricao(string nomeRestricao, TipoRestricao tipoRestricao)
 {
     NomeRestricao = nomeRestricao;
     TipoRestricao = tipoRestricao;
 }