Exemplo n.º 1
0
        public LivroValidacaoEmprestar(ILivroRepositorio livroRepositorio)
        {
            _livroRepositorio = livroRepositorio;

            RuleFor(x => x.Id)
            .NotNull()
            .WithMessage("Não é possível excluir um livro sem informar o ID.")
            .DependentRules(() =>
            {
                RuleFor(x => x.Id).Cascade(CascadeMode.StopOnFirstFailure)
                .MustAsync(async(id, cancellation) =>
                {
                    var livroExistente = await _livroRepositorio.SelecionarPorId(id);
                    if (livroExistente != null)
                    {
                        return(true);
                    }
                    return(false);
                })
                .WithMessage("Esse livro não existe na aplicação. O ID informado pode estar incorreto.")
                .MustAsync(async(id, cancellation) =>
                {
                    var livroValido = await _livroRepositorio.SelecionarPorId(id);
                    if (livroValido.Emprestado == true)
                    {
                        return(false);
                    }

                    return(true);
                }).WithMessage("O Livro já está emprestado.");
            });
        }
Exemplo n.º 2
0
        public void InitializeObjects()
        {
            _ILivroRepositorio = new LivroSqlRepositorio();
            _livroService      = new LivroService(_ILivroRepositorio);

            BaseSqlTest.SeedDatabase();
        }
Exemplo n.º 3
0
 public AdministradorServico(IAutorRepositorio autorDAO, ILivroRepositorio livroDAO, IEstanteRepositorio estanteDAO, IPrateleiraRepositorio prateleiraDAO, IBancoDadosCreator bancoDadosCreator)
 {
     _autorDAO          = autorDAO;
     _livroDAO          = livroDAO;
     _estanteDAO        = estanteDAO;
     _prateleiraDAO     = prateleiraDAO;
     _bancoDadosCreator = bancoDadosCreator;
 }
Exemplo n.º 4
0
 public LivroAplicacao(ILivroRepositorio repositorio,
                       ILivroFactory livroFactory,
                       ILivroValidator validator)
 {
     _repositorio  = repositorio;
     _livroFactory = livroFactory;
     _validator    = validator;
 }
Exemplo n.º 5
0
 public AdministradorServico(IAutorRepositorio autorDAO, ILivroRepositorio livroDAO, IEstanteRepositorio estanteDAO, IPrateleiraRepositorio prateleiraDAO, IBancoDadosCreator bancoDadosCreator)
 {
     _autorDAO = autorDAO;
     _livroDAO = livroDAO;
     _estanteDAO = estanteDAO;
     _prateleiraDAO = prateleiraDAO;
     _bancoDadosCreator = bancoDadosCreator;
 }
Exemplo n.º 6
0
        public LivroValidacaoEdicao(ILivroRepositorio livroRepositorio)
        {
            _livroRepositorio = livroRepositorio;

            RuleFor(x => x)
            .NotNull()
            .WithMessage("Deve ser informados novos dados para alteração do livro.")
            .DependentRules(() =>
            {
                RuleFor(x => x.Id)
                .NotEmpty()
                .WithMessage("É necessário informar o ID para editar um livro.")
                .NotNull()
                .WithMessage("É necessário informar o ID para editar um livro.");

                RuleFor(x => x.Id).Cascade(CascadeMode.StopOnFirstFailure)
                .MustAsync(async(id, cancellation) =>
                {
                    var livroExistente = await _livroRepositorio.SelecionarPorId(id);
                    if (livroExistente != null)
                    {
                        return(true);
                    }
                    return(false);
                }).WithMessage("Esse livro não existe na aplicação. Tente informar um outro ID.")
                .MustAsync(async(id, cancellation) =>
                {
                    var livroDisponivel = await _livroRepositorio.SelecionarPorId(id);
                    if (livroDisponivel.Emprestado == false)
                    {
                        return(true);
                    }
                    return(false);
                }).WithMessage("Esse livro está emprestado. Não é possível editar livros emprestados.");

                RuleFor(x => x.Codigo)
                .NotNull()
                .WithMessage("É preciso informar um código para o livro. Sugetão: DEV-001")
                .NotEmpty()
                .WithMessage("É preciso informar um código para o livro. Sugetão: DEV-001");

                RuleFor(x => x.Titulo)
                .NotNull()
                .WithMessage("É preciso um título para esse livro.")
                .NotEmpty()
                .WithMessage("É preciso um título para esse livro.");

                RuleFor(x => x.Estado)
                .NotNull()
                .WithMessage("É preciso informar o estado livro. Estados: Bom, Regular, Ruim.");

                RuleFor(x => x.FotoUrl)
                .NotNull()
                .WithMessage("É necessário informar a URL da foto do livro.")
                .NotEmpty()
                .WithMessage("É necessário informar a URL da foto do livro.");
            });
        }
 public RemovedorDeLivro(
     INotify notify,
     ILivroRepositorio livroRepositorio,
     IValidadorDelivro validadorDelivro
     )
 {
     _notify           = notify.Invoke();
     _livroRepositorio = livroRepositorio;
     _validadorDelivro = validadorDelivro;
 }
        public LivroServico(ILivroRepositorio livroDAO
                            , ILivroUsuarioRepositorio livroUsuarioDAO
                            , IMapeamento Mapeamento)
        {
            this.LivroUsuarioDAO = livroUsuarioDAO;
            this.LivroDAO        = livroDAO;
            this.Mapeamento      = Mapeamento;

            this.Includes(e => e.Livro
                          , e => e.Livro.LivroCategoria);
        }
Exemplo n.º 9
0
 public ArmazenadorDeLivro(
     INotify notify,
     ILivroRepositorio livroRepositorio,
     IValidadorDelivro validadorDelivro,
     IAlteradorDeLivro alteradorDeLivro)
 {
     _notify           = notify.Invoke();
     _livroRepositorio = livroRepositorio;
     _validadorDelivro = validadorDelivro;
     _alteradorDeLivro = alteradorDeLivro;
 }
Exemplo n.º 10
0
 public LivroController(
     INotificationHandler <Notifications> notification,
     ILogger <LivroController> logger,
     IArmazenadorDeLivro armazenadorDeLivro,
     IRemovedorDeLivro removedorDeLivro,
     ILivroRepositorio livroRepositorio)
     : base(notification)
 {
     _armazenadorDeLivro = armazenadorDeLivro;
     _removedorDeLivro   = removedorDeLivro;
     _livroRepositorio   = livroRepositorio;
     _logger             = logger;
 }
        public EmprestimoValidacaoInclusao(ILivroRepositorio livroRepositorio)
        {
            _livroRepositorio = livroRepositorio;


            RuleFor(x => x)
            .NotEmpty()
            .NotNull()
            .DependentRules(() =>
            {
                RuleFor(x => x.LivroId)
                .NotNull()
                .WithMessage("É preciso informar informar o Id do livro")
                .NotEmpty()
                .WithMessage("É preciso informar informar o Id do livro")
                .DependentRules(() =>
                {
                    RuleFor(x => x.LivroId)
                    .MustAsync(async(id, cancellation) =>
                    {
                        var livroExistente = await _livroRepositorio.SelecionarPorId(id);
                        if (livroExistente != null)
                        {
                            return(true);
                        }
                        return(false);
                    })
                    .WithMessage(x => $"Livro Id: {x.LivroId} não existe.")
                    .DependentRules(() =>
                    {
                        RuleFor(x => x.LivroId)
                        .MustAsync(async(id, cancellation) =>
                        {
                            var livroExistente = await _livroRepositorio.SelecionarPorId(id);
                            return(!livroExistente.Emprestado);
                        }).WithMessage(x => $"Livro Id: {x.LivroId} está emprestado.");
                    });
                });


                RuleFor(x => x.UsuarioId)
                .NotNull()
                .WithMessage("É preciso informar informar o Id do usuario")
                .NotEmpty()
                .WithMessage("É preciso informar informar o Id do usuario");
            });
        }
Exemplo n.º 12
0
        public LivroServico(
            IMapper mapper,
            ILivroRepositorio livroRepositorio,
            ILivroValidacaoInclusao livroValidacaoInclusao,
            ILivroValidacaoExclusao livroValidacaoExclusao,
            ILivroValidacaoEdicao livroValidacaoEdicao,
            ILivroValidacaoDevolucao livroValidacaoDevolucao,
            ILivroValidacaoEmprestar livroValidacaoEmprestar)
        {
            _mapper                  = mapper;
            _livroRepositorio        = livroRepositorio;
            _livroValidacaoInclusao  = livroValidacaoInclusao;
            _livroValidacaoExclusao  = livroValidacaoExclusao;
            _livroValidacaoEdicao    = livroValidacaoEdicao;
            _livroValidacaoDevolucao = livroValidacaoDevolucao;
            _livroValidacaoEmprestar = livroValidacaoEmprestar;

            Erros = new List <string>();
        }
Exemplo n.º 13
0
        public LivroValidacaoInclusao(ILivroRepositorio livroRepositorio)
        {
            _livroRepositorio = livroRepositorio;

            RuleFor(x => x)
            .NotNull()
            .WithMessage("Não pode ser criado um livro sem dados.")
            .DependentRules(() =>
            {
                RuleFor(x => x.Codigo)
                .NotNull()
                .WithMessage("É preciso informar um código para o livro. Sugetão: DEV-001")
                .NotEmpty()
                .WithMessage("É preciso informar um código para o livro. Sugetão: DEV-001");

                RuleFor(x => x.Titulo)
                .NotNull()
                .WithMessage("É preciso um título para esse livro.")
                .NotEmpty()
                .WithMessage("É preciso um título para esse livro.");

                RuleFor(x => x.Estado)
                .NotNull()
                .WithMessage("É preciso informar o estado livro. Estados: Bom, Regular, Ruim.");

                RuleFor(x => x.FotoUrl)
                .NotNull()
                .WithMessage("É necessário informar a URL da foto do livro.")
                .NotEmpty()
                .WithMessage("É necessário informar a URL da foto do livro.");

                RuleFor(x => x.Id).MustAsync(async(id, cancellation) =>
                {
                    var livroExistente = await _livroRepositorio.SelecionarPorId(id);
                    if (livroExistente == null)
                    {
                        return(true);
                    }
                    return(false);
                }).WithMessage("Esse livro já existe na aplicação. Tente informar um novo ID.");
            });
        }
Exemplo n.º 14
0
 public CategoriaServico(ICategoriaRepositorio categoriaRepositorio,
                         ILivroRepositorio livroRepositorio) : base(categoriaRepositorio)
 {
     _categoriaRepositorio = categoriaRepositorio;
     _livroRepositorio     = livroRepositorio;
 }
 public void Setup()
 {
     BaseSqlTest.SeedDatabase();
     _repositorio = new LivroRepositorio();
     _service     = new LivroService(_repositorio);
 }
Exemplo n.º 16
0
 public LivroServico(ILivroRepositorio livroDAO)
 {
     _livroDAO = livroDAO;
 }
Exemplo n.º 17
0
 public AplicacaoLivro(ILivroRepositorio livroRepositorio)
 {
     this._livroRepositorio = livroRepositorio;
 }
Exemplo n.º 18
0
 public LivrosController(ILivroRepositorio repo, IMapper mapper, ILogger <LivrosController> logger)
 {
     _repo   = repo;
     _mapper = mapper;
     _logger = logger;
 }
Exemplo n.º 19
0
 public LivroValidator(ILivroRepositorio repositorio)
 {
     _repositorio = repositorio;
 }
Exemplo n.º 20
0
 public LivroServico(ILivroRepositorio repo)
 {
     _repo = repo;
 }
Exemplo n.º 21
0
 public EditoraServico(IEditoraRepositorio editoraRepositorio,
                       ILivroRepositorio livroRepositorio) : base(editoraRepositorio)
 {
     _editoraRepositorio = editoraRepositorio;
     _livroRepositorio   = livroRepositorio;
 }
Exemplo n.º 22
0
 public void Setup()
 {
     _categoriaRepositorio = new CategoriaRepositorioMock();
     _livroRepositorio     = new LivroRepositorioMock();
     _categoriaServico     = new CategoriaServico(_categoriaRepositorio, _livroRepositorio);
 }
 public LivroController()
 {
     _livroRepositorio = new LivroRepositorio();
 }
 public LivroServico(ILivroRepositorio <Livro> repositorioLivro, IAutorRepositorio <Autor> repositorioAutor, IEditoraRepositorio <Editora> repositorioEditora)
 {
     this._repositorioLivro   = repositorioLivro;
     this._repositorioAutor   = repositorioAutor;
     this._repositorioEditora = repositorioEditora;
 }
Exemplo n.º 25
0
 public LivroController(ILivroRepositorio repositorio)
 {
     _repositorio = repositorio;
 }
Exemplo n.º 26
0
 public LivroController()
 {
     this._livroRepositorio = new LivroRepositorio(new LivroContext());
 }
 public void InitializeObjects()
 {
     BaseSqlTest.SeedDatabase();
     _repositorio = new LivroSqlRepositorio();
 }
Exemplo n.º 28
0
 public LivroServico(ILivroRepositorio livroRepositorio) : base(livroRepositorio)
 {
     _livroRepositorio = livroRepositorio;
 }
Exemplo n.º 29
0
 public LivrosController(ILivroRepositorio livroRepositorio)
 {
     _livroRepositorio = livroRepositorio;
 }
Exemplo n.º 30
0
 public LivroService(ILivroRepositorio livroRepositorio)
 {
     _livroRepositorio = livroRepositorio;
 }
Exemplo n.º 31
0
 public void Setup()
 {
     _editoraRepositorio = new EditoraRepositorioMock();
     _livroRepositorio   = new LivroRepositorioMock();
     _editoraServico     = new EditoraServico(_editoraRepositorio, _livroRepositorio);
 }
Exemplo n.º 32
0
 public LivroServico(ILivroRepositorio livroDAO)
 {
     _livroDAO = livroDAO;
 }
Exemplo n.º 33
0
 public LivroServico(ILivroRepositorio livroRepositorio, IEditoraRepositorio editoraRepositorio)
 {
     this.livroRepositorio = livroRepositorio;
     this.editoraRepositorio = editoraRepositorio;
 }