Um micro sistema de exemplo que usa alguns padrões, mas o destaque para chain of resposibility

Overview

Projeto para ilustrar o uso do Chain Of Responsibility

O objetivo é apresentar exemplos de aplicação do padrão de projeto Chain of Responsibility. Neste projeto é possivel identificar outros padrões usados, como por exemplo: Template Method e State. Mas o foco é apresentar como um processo complexo pode ser segmentado e tratado por diferentes manipuladores ou como, podemos lançar uma requisição que seguirá em uma esteira e poderá ser tratada por algum manipulador que decidir tratar.

Setup

Desenvolvimento local

Para executar o projeto, basta rodar os seguintes comandos make:

Obs.: São necessários o docker e docker-compose previamente instalados e configurados no ambiente local

make docker-build

make docker-composer-install

make docker-up

Após executar esse comandos, rode no banco SQlite, os scripts que estão no diretório: src/Infra/Database/Migrations

Como é um projeto com fins acadêmicos, você encontrará linhas comentadas em alguns scripts. O projeto ainda está em desenvolvimento, mas sinta-se a vontade para opnar e até melhorar!

para acessar uma espécie de front, acesse pelo navegador: localhost:8000

Qualquer um dos usuários na tabela usuarios pode ser usado e eles estão com senha: 123456

Para acessar o mailtrap, utilize esse caminho: localhost:8125

Usuário mailtrap e senha: mailtrap

Você também pode olhar o script: src\App\ConsoleApplication.php

Esse script está com varias linhas comentadas de testes usando os cruds e outros serviços.

para rodar ele, acesse o container usando o comando: make docker-bash

Em seguida no console no container: php app.php

Para o cenário principal apresentado nesse projeto, recomendo que você utilize xDebug com alguma ide para seguir o processo quando solicitar uma aprovação de orçamento.

Tecnologias

PHP ≥ 8.1

SQlite 3

You might also like...
Sistema web para empresa de diseño "Disema", con operaciones básicas CRUD y uso de html, JQ, JS, php y css

Disema System Sistema web para empresa de diseño "Disema", con operaciones básicas CRUD y uso de html, JQ, JS, php y css Para su correcto uso, deberá

Este es un sitema bibliotecario para registro de adquisiciones y prestamos para INATEC Siuna

About Laravel Laravel is a web application framework with expressive, elegant syntax. We believe development must be an enjoyable and creative experie

Plugin de Wordpress para criar um Hacker News-like para o ManualdoUsuario.net

🪐 Órbita Plugin de Wordpress para criar um painel de debates baseado em links, similar ao Hacker News, para o Manual do Usuário. Rodar o projeto Requ

Site que permite encontrar todas as informações de um CEP e armazenar na lista de endereços cadastrados. Desenvolvido em Laravel com a API da VIACEP.
Site que permite encontrar todas as informações de um CEP e armazenar na lista de endereços cadastrados. Desenvolvido em Laravel com a API da VIACEP.

CEP Finder Site que permite encontrar todas as informações de um CEP e armazenar na lista de endereços cadastrados. Desenvolvido em Laravel com a API

💻 ➔  Projeto de um website que possuí um Banco de Dados, feito juntamente com minha amiga Helena (hmiranda99).
💻 ➔ Projeto de um website que possuí um Banco de Dados, feito juntamente com minha amiga Helena (hmiranda99).

💈 Barber Shop Duhel Website feito para o projeto final do 2º Módulo da matéria de PW2. Visite o site clicando aqui 📎 Autores 👨‍💻 Helena Miranda 👨

Proyecto de la materia de Programacion Web que abarca html, css, php y js.

ProyectoPW Proyecto de la materia de Programacion Web que abarca html, css, php y js. DENTRO DE ESTA CARPETA DE PROYECTO DE PROGRAMACION WEB SE ENCUEN

Dashboard autônoma que mostra os dados gerais da campanha de vacinação contra a Covid-19 do Estado de Mato-Grosso

Vacinometro Covid-19 MT Web App Demo: https://vacinometro-mt.netlify.app/ Dashboard que mostra o progresso da campanha de vacinação da Covid-19 no est

Con esta libreria lo que se agiliza el proceso del desarrollo de páginas web destinadas a dispositivos móviles

CodeIgniter jQuery Mobile Library Libreria para el desarrollo de versiones móviles de páginas con el framework jQuery Mobile. public function index()

TIA es una Tía de Inteligencia Artificial que genera memes con Piolines y frases bonitas

TIA TIA es una Tía de Inteligencia Artificial que genera memes con Piolines y frases bonitas Requerimientos PHP 7.0 or higher GD Library Instructions

Owner
Alexandre Bezerra Barbosa
Alexandre Bezerra Barbosa
Jéssica Paula 7 Aug 12, 2022
Crea rutas en php de la forma mas fácil posible.

SimpleRouter-php Te permitirá crear un routing de la forma mas fácil posible, recibiendo todo lo enviado por un usuario a través de un callback. Prime

null 7 Dec 27, 2022
Aqui são distribídas apostilas sobre alguns assuntos como PHP, PDO, MySQL, PHPOO, MVC, etc

Apostilas de Programação Aqui são distribídas apostilas sobre alguns assuntos como PHP, PDO, MySQL, PHPOO, MVC, etc URL deste repositório https://gith

Ribamar FS 50 Dec 24, 2022
Gerador de chaves com padrões de caracteres

Keygen Essa documentação está disponível também em Português do Brasil. This plugin is under development and may exhibit unexpected behavior while usi

Kaio Piola 9 May 24, 2022
Track your farming and pool performance on the Binance Smart Chain

farm.army - Frontend Track your farming and pool performance on the Binance Smart Chain. Tech Stack PHP 8 + Symfony node.js + npm (Webpack, Symfony en

farm.army 28 Sep 3, 2022
O manager Box é um projeto da disciplina de Projeto e prática 2 do IFPE - Igarassu, que consiste em uma aplicação web com funções de gerenciamento de estoque para pequenos empreendimentos.

ManagerBox O Manager Box é um projeto da disciplina de Projeto e prática 2 do IFPE - Igarassu, que consiste em uma aplicação web com funções de gerenc

Alan José 4 Apr 15, 2022
aqui tienen una plantilla que pueden usar para crear paginas web, contiene html, css, javascript y php

Plantilla-html aqui tienen una plantilla que pueden usar para crear paginas web, contiene html, css, javascript y php. esta plantilla obviamente neces

PEKKA102 3 Sep 19, 2022
Projeto de TCC. Sistema para melhoria de gestão e administração de bibliotecas.

TCC PROJETO ATHENA. (BIBLIOTECA ATHENA). Projeto criado por mim e integrantes do meu grupo de TCC na ETEC Juscelino Kubitschek de Oliveira. INTEGRANTE

Lucas Menchon 2 Jun 7, 2022
Aplicação criada com Angular e Laravel em conjunto para fazer um treinamento de autenticação com sistema de login, guarda de rotas e cadastro de usuários no banco de dados MySQL

Times-de-Futebol-BR Descrição do Projeto Aplicação criada com Angular e Laravel em conjunto para fazer um treinamento de autenticação com sistema de l

Lucas Henrique Pessutto 5 Mar 14, 2022
Realice un programa en cualquier lenguaje de programación en el cual implemente un sistema de registro de asistencias para los ayudantes y becarios del LTIC.

About Laravel Laravel is a web application framework with expressive, elegant syntax. We believe development must be an enjoyable and creative experie

Darwin Contreras 1 Jan 5, 2022