{"id":28223443,"url":"https://github.com/lmuffato/practice-sequelize-associations-trybe","last_synced_at":"2026-04-28T21:34:19.288Z","repository":{"id":139798674,"uuid":"417979723","full_name":"lmuffato/Practice-sequelize-associations-Trybe","owner":"lmuffato","description":"Projeto para praticar sequelize - Bloco 29: Arquitetura: SOLID e ORM","archived":false,"fork":false,"pushed_at":"2021-10-20T17:26:33.000Z","size":4390,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-09-08T14:55:15.746Z","etag":null,"topics":["api","back-end","crud","database","express","mysql","orm","pratice","pratice-project","sequelize","solid","sql"],"latest_commit_sha":null,"homepage":"https://www.linkedin.com/in/lucasmuffato/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lmuffato.png","metadata":{"files":{"readme":"README.MD","changelog":null,"contributing":null,"funding":null,"license":null,"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,"zenodo":null}},"created_at":"2021-10-17T00:19:47.000Z","updated_at":"2021-11-22T23:34:32.000Z","dependencies_parsed_at":null,"dependency_job_id":"28487583-e762-416a-83b8-cc82717753df","html_url":"https://github.com/lmuffato/Practice-sequelize-associations-Trybe","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/lmuffato/Practice-sequelize-associations-Trybe","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lmuffato%2FPractice-sequelize-associations-Trybe","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lmuffato%2FPractice-sequelize-associations-Trybe/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lmuffato%2FPractice-sequelize-associations-Trybe/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lmuffato%2FPractice-sequelize-associations-Trybe/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lmuffato","download_url":"https://codeload.github.com/lmuffato/Practice-sequelize-associations-Trybe/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lmuffato%2FPractice-sequelize-associations-Trybe/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32400866,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-28T19:38:08.556Z","status":"ssl_error","status_checked_at":"2026-04-28T19:37:55.688Z","response_time":56,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["api","back-end","crud","database","express","mysql","orm","pratice","pratice-project","sequelize","solid","sql"],"created_at":"2025-05-18T08:09:39.002Z","updated_at":"2026-04-28T21:34:19.283Z","avatar_url":"https://github.com/lmuffato.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"Esse é um projeto para o conteúdo de `ORM - Associations`\n### Antes de iniciar\n\nRode o `npm install`.\n\n### COMEÇANDO O PROJETO\n\nNesse projeto vamos criar uma API que será responsável pela gestão de um sistema de saúde. Nesse sistema terão pacientes, cada um com seu plano. Cada paciente pode ter realizado várias cirurgias, que por sua vez, devem ser listadas e categorizadas. O diagrama abaixo demonstra como o banco de dados se comportará:\n\n![Diagrama](images/diagrama3.png)\n\nEste repositório ja contém alguns arquivos padrões, ao executar `npm install` as seguintes dependências foram instaladas:\n\n- express\n\n- nodemon\n\n- sequelize mysql2\n\n- sequelize-cli\n\nSerá necessário configurar o arquivo `config/config.json` com os dados de seu servidor.\n\nApós, utilize os comandos:\n\n- `npx sequelize db:create`\n- `npx sequelize db:migrate`\n- `npx sequelize db:seed:all`\n\nEsses comandos vão criar respectivamente, a `database`, as `tables` e após, inserir dados exemplos nas tabelas.\n\nAs tabelas criadas são:\n\n- Patients\n- Patients_surgeries\n- Plans\n- Surgeries\n\nFeito isso, ja podem ser realizados os exercícios abaixo.\n\n#### Exercício 1\n\nCrie o model de `Plans`.\n\n#### Exercício 2\n\nCrie o model de `Patients`.\n\n#### Exercício 3\n\nCrie o model de `Surgeries`.\n\n#### Exercício 4\n\nCrie o model de `Patient_surgeries`.\n\n#### Exercício 5\n\nCrie um endpoint que liste todos os pacientes e seus respectivos planos.\n\n#### Exercício 6\n\nCrie um endpoint que liste todos os pacientes e suas respectivas cirurgias realizadas.\n\n#### Exercício 7\n\nCrie um endpoint que de acordo com o id de um plano, que deve ser recebido via requisição, liste os pacientes que o possuem.\n\n### Bônus\n\n#### Exercício 1 \n\nCrie um endpoint capaz de adicionar um novo paciente.\n\n#### Exercício 2\n\nCrie um endpoint que liste todos os pacientes e suas cirurgias realizadas, mas oculte o nome do médico responsável.\n\n#### Exercício 3\n\nCrie um endpoint que de acordo com o nome do médico, que deve ser recebido via requisição, liste todas as cirurgias realizadas pelo mesmo, um get na url `http://localhost:3000/surgeries/Rey%20Dos%20Santos`deve retornar as cirurgias realizadas pelo médico `Rey Dos Santos`.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flmuffato%2Fpractice-sequelize-associations-trybe","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flmuffato%2Fpractice-sequelize-associations-trybe","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flmuffato%2Fpractice-sequelize-associations-trybe/lists"}