{"id":24919324,"url":"https://github.com/jhon-henkel/market_control","last_synced_at":"2026-04-14T07:34:08.620Z","repository":{"id":275348404,"uuid":"925813971","full_name":"Jhon-Henkel/market_control","owner":"Jhon-Henkel","description":"Aplicação para ajudar a controlar os seus gastos com o mercado","archived":false,"fork":false,"pushed_at":"2025-02-26T22:17:47.000Z","size":250,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-26T22:31:03.308Z","etag":null,"topics":["docker","php84","php84-docker","telegram-bot"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Jhon-Henkel.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["Jhon-Henkel"]}},"created_at":"2025-02-01T20:08:51.000Z","updated_at":"2025-02-26T22:17:50.000Z","dependencies_parsed_at":null,"dependency_job_id":"a7e64e8a-103b-47e6-b857-904c97719c85","html_url":"https://github.com/Jhon-Henkel/market_control","commit_stats":null,"previous_names":["jhon-henkel/market_control"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Jhon-Henkel%2Fmarket_control","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Jhon-Henkel%2Fmarket_control/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Jhon-Henkel%2Fmarket_control/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Jhon-Henkel%2Fmarket_control/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Jhon-Henkel","download_url":"https://codeload.github.com/Jhon-Henkel/market_control/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246009014,"owners_count":20708879,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","php84","php84-docker","telegram-bot"],"created_at":"2025-02-02T10:17:56.397Z","updated_at":"2025-10-30T12:46:22.819Z","avatar_url":"https://github.com/Jhon-Henkel.png","language":"PHP","funding_links":["https://github.com/sponsors/Jhon-Henkel"],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/lelouchfr/skill-icons\"\u003e\n    \u003cimg src=\"https://go-skill-icons.vercel.app/api/icons?i=docker,php,mysql,laravel,telegram\" alt=\"tecnologias\"/\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n---\n[![wakatime](https://wakatime.com/badge/user/0a37bb0e-06f5-473c-8296-dc600e1c0d35/project/e85780b8-3e2d-40ef-966b-29e871fabd76.svg)](https://wakatime.com/badge/user/0a37bb0e-06f5-473c-8296-dc600e1c0d35/project/e85780b8-3e2d-40ef-966b-29e871fabd76)\n\n---\n\n# Market Control\n\nA ideia desse projeto é criar um sistema para controlar os gastos de uma família com o mercado. Basta ter o QR code do \nNFCe e o sistema irá buscar os dados e salvar no banco de dados para posteriores consultas e relatórios.\n\n## Iniciando o Projeto\n- Rodar os seguintes comandos:\n    ```bash\n      cp config/develop/docker/docker-compose.yml docker-compose.yml\n      docker-compose up -d\n      make bakcnd-bash\n      chown www-data:www-data -R storage/framework\n      chown www-data:www-data -R storage/logs/\n      cp .env.example .env\n      php artisan key:generate\n      php artisan migrate\n    ```\n- Popular as variáveis de ambiente do arquivo `.env`.\n  - Caso tenha mais de um username permitido a acessar o app via telegram, adicione os usernames (sem o @ na frente) separados por vírgula na variável `APP_TELEGRAM_ALLOWED_USERNAMES`.\n  - Popular a variável `APP_TELEGRAM_BOT_TOKEN` com o token do bot criado no telegram.\n\n## Comandos Make\n- `make bakcnd-bash` Inicia os containers e entra no bash do backend\n\n## Comandos para interagir com o bot\n- `/start` - Inicia uma nova conversa com o chatbot\n- `/nfce` - Inicia o processo de salvar uma NFCe no banco de dados, aqui temos a possibilidade de processar tanto um link quanto um QR-Code. No final, perguntamos se deseja salvar uma movimentação de despesa no Finanças na Mão.\n- `/month` - Relatório do mês atual\n- `/last_purchase` - Relatório da última compra\n- `/end` - Finaliza a conversa com o chatbot\n\n## Acessos \n- [PHP My Admin](http://localhost:8080) \u003e Usuário `root` Senha `123`\n\n## Integração com o Finanças na Mão\n- Popular as variáveis no .env\n  - `MFP_URL` - URL do Finanças na Mão\n  - `MFP_TOKEN` - Token de autenticação MFP do Finanças na Mão\n- No .env do Finanças na mão, popular as variáveis\n  - `MARKET_CONTROL_HASH` - Hash do usuário do Market Control no Finanças na Mão\n\nObs.: Se ambas estiverem em container Docker, o container `mfp_app` e `mfp_db` devem estar na mesma network que o container do Market Control.\nPara colocar na mesma network, basta usar os comandos:\n```bash\n  docker network ls\n  docker network connect nome-da-rede nome-do-container\n```\nPara checar se está tudo certo, pode usar:\n```bash\n  docker network inspect nome-da-rede-market-control\n```\n\n## Reiniciar boot em caso de loop\nPode acontecer de o boot entrar em loop, então deve-se rodar os comandos:\n```bash\n  curl -X POST \"https://api.telegram.org/botSEU_TOKEN/getWebhookInfo\"\n  curl -X POST \"https://api.telegram.org/botSEU_TOKEN/deleteWebhook\"\n  curl -X POST \"https://api.telegram.org/botSEU_TOKEN/getUpdates\" -d \"offset=-1\"\n  curl -X POST \"https://api.telegram.org/botSEU_TOKEN/setWebhook\" -d \"url=https://marketcontrol.financasnamao.com.br:8443/api/chat/webhook\"\n```\n- O primeiro comando é para ver o status do webhook.\n- O segundo é para deletar o webhook.\n- O terceiro é para pegar as mensagens que estão em espera.\n- O quarto é para setar o webhook novamente.\n\nAo rodar o segundo comando, esperar alguns segundos antes de rodar o terceiro comando.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjhon-henkel%2Fmarket_control","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjhon-henkel%2Fmarket_control","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjhon-henkel%2Fmarket_control/lists"}