{"id":24085728,"url":"https://github.com/samuelmsilva2v/apiunionsgrupo","last_synced_at":"2026-05-01T12:31:58.756Z","repository":{"id":271772849,"uuid":"914515861","full_name":"samuelmsilva2v/apiUnionsGrupo","owner":"samuelmsilva2v","description":"API RESTful desenvolvida em Spring Boot.","archived":false,"fork":false,"pushed_at":"2025-01-29T19:13:05.000Z","size":84,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-11T02:19:59.961Z","etag":null,"topics":["back-end","jpa","postgresql","spring-boot"],"latest_commit_sha":null,"homepage":"","language":"Java","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/samuelmsilva2v.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}},"created_at":"2025-01-09T18:45:08.000Z","updated_at":"2025-03-17T02:36:25.000Z","dependencies_parsed_at":"2025-01-29T20:32:37.530Z","dependency_job_id":null,"html_url":"https://github.com/samuelmsilva2v/apiUnionsGrupo","commit_stats":null,"previous_names":["samuelmsilva2v/apiunionsgrupo"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/samuelmsilva2v/apiUnionsGrupo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samuelmsilva2v%2FapiUnionsGrupo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samuelmsilva2v%2FapiUnionsGrupo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samuelmsilva2v%2FapiUnionsGrupo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samuelmsilva2v%2FapiUnionsGrupo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/samuelmsilva2v","download_url":"https://codeload.github.com/samuelmsilva2v/apiUnionsGrupo/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samuelmsilva2v%2FapiUnionsGrupo/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32497810,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"online","status_checked_at":"2026-05-01T02:00:05.856Z","response_time":64,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["back-end","jpa","postgresql","spring-boot"],"created_at":"2025-01-10T01:54:22.642Z","updated_at":"2026-05-01T12:31:58.701Z","avatar_url":"https://github.com/samuelmsilva2v.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# API Unions Grupo\n**Back-end da aplicação web da empresa Unions Grupo, desenvolvida durante o Hackathon da Coti Informática.**\n\nEssa API consiste em um sistema de networking projetado para ser utilizado por membros associados. O sistema permite que os membros realizem as seguintes ações:\n\n* Convidar outras pessoas para se tornarem membros;\n* Marcar reuniões para fechamento de negócios;\n* Fazer referências e avaliar serviços adquiridos.\n\nO projeto tem como objetivo facilitar a conexão entre os associados, promovendo oportunidades de negócios e fortalecendo a rede de contatos.\n\n## Funcionalidades\n- Cadastro de grupos, gerenciamento de grupos (alteração, exclusão e consulta).\n- Cadastro de membros associados a um ou mais grupos, gerenciamento de membros (alteração, exclusão e consulta).\n- Cadastro de convidados associados a um membro, gerenciamento de convidados (alteração, exclusão e consulta).\n- Possibilidade de agendar uma reunião 1 a 1 entre dois membros.\n- Registro de referência e avaliação de um serviço prestado por algum membro.\n- Registro de OPNF.\n\n## Tecnologias utilizadas:\n- **Java 21**\n- **Spring Boot 3.4.1**\n- **Spring Data JPA**\n- **Hibernate**\n- **PostgreSQL**\n- **Swagger**\n- **Lombok**\n- **Model Mapper**\n- **Bean Validation (javax.validation)**\n\n## Endpoints\n#### Grupos\n| Método | Endpoint             | Descrição                       |\n|--------|----------------------|---------------------------------|\n| POST   | `/api/grupos`        | Registra um novo grupo          |\n| GET    | `/api/grupos`        | Consulta todas os grupos        |\n| GET    | `/api/grupos/{id}`   | Consulta um grupo através do ID |\n| PUT    | `/api/grupos/{id}`   | Edita um grupo                  |\n| DELETE | `/api/grupos/{id}`   | Exclui um grupo                 |\n\n#### Membros\n| Método | Endpoint              | Descrição                        |\n|--------|-----------------------|----------------------------------|\n| POST   | `/api/membros`        | Registra um novo membro          |\n| GET    | `/api/membros`        | Consulta todas os membros        |\n| GET    | `/api/membros/{id}`   | Consulta um membro através do ID |\n| PUT    | `/api/membros/{id}`   | Edita um membro                  |\n| DELETE | `/api/membros/{id}`   | Exclui um membro                 |\n\n#### Convidados\n| Método | Endpoint                 | Descrição                           |\n|--------|--------------------------|-------------------------------------|\n| POST   | `/api/convidados`        | Registra um novo convidado          |\n| GET    | `/api/convidados`        | Consulta todas os convidados        |\n| GET    | `/api/convidados/{id}`   | Consulta um convidado através do ID |\n| PUT    | `/api/convidados/{id}`   | Edita um convidado                  |\n| DELETE | `/api/convidados/{id}`   | Exclui um convidado                 |\n\n#### Reunião\n| Método | Endpoint               | Descrição                           |\n|--------|------------------------|-------------------------------------|\n| POST   | `/api/reunioes`        | Marca uma nova reunião              |\n| GET    | `/api/reunioes`        | Consulta todas os reuniões marcadas |\n| GET    | `/api/reunioes/{id}`   | Consulta uma reunião através do ID  |\n| PUT    | `/api/reunioes/{id}`   | Altera uma reunião                  |\n| DELETE | `/api/reunioes/{id}`   | Desmarca uma reunião                |\n\n#### Referência\n| Método | Endpoint                  | Descrição                             |\n|--------|---------------------------|---------------------------------------|\n| POST   | `/api/referencias`        | Registra uma nova referência          |\n| GET    | `/api/referencias`        | Consulta todas as referências         |\n| GET    | `/api/referencias/{id}`   | Consulta uma referência através do ID |\n| PUT    | `/api/referencias/{id}`   | Altera uma referência                 |\n| DELETE | `/api/referencias/{id}`   | Exclui uma referência                 |\n\n#### OPNF\n| Método | Endpoint           | Descrição                       |\n|--------|--------------------|---------------------------------|\n| POST   | `/api/opnf`        | Registra uma nova OPNF          |\n| GET    | `/api/opnf`        | Consulta todas as OPNFs         |\n| GET    | `/api/opnf/{id}`   | Consulta uma OPNF através do ID |\n| PUT    | `/api/opnf/{id}`   | Altera uma OPNF                 |\n| DELETE | `/api/opnf/{id}`   | Exclui uma OPNF                 |\n\n## Instalação:\n\n### 1. Clone o repositório:\n```bash\n   git clone https://github.com/samuelmsilva2v/apiUnionsGrupo.git\n   cd apiUnionsGrupo\n```\n### 2. Instalando as dependências e compilando o projeto com Maven:\n```bash\n./mvnw clean install\n```\n### 3. Executando a aplicação:\n```bash\n./mvnw spring-boot:run\n```\n#### A aplicação vai rodar em http://localhost:8080/swagger-ui/index.html#\n\n## Prototipação\n\n![](https://github.com/samuelmsilva2v/assets/blob/main/apiUnionsGrupo/Modelo_Unions_Page_2.png)\n![](https://github.com/samuelmsilva2v/assets/blob/main/apiUnionsGrupo/Modelo_Unions_Page_3.png)\n![](https://github.com/samuelmsilva2v/assets/blob/main/apiUnionsGrupo/Modelo_Unions_Page_4.png)\n![](https://github.com/samuelmsilva2v/assets/blob/main/apiUnionsGrupo/Modelo_Unions_Page_5.png)\n![](https://github.com/samuelmsilva2v/assets/blob/main/apiUnionsGrupo/Modelo_Unions_Page_6.png)\n![](https://github.com/samuelmsilva2v/assets/blob/main/apiUnionsGrupo/Modelo_Unions_Page_7.png)\n![](https://github.com/samuelmsilva2v/assets/blob/main/apiUnionsGrupo/Modelo_Unions_Page_8.png)\n![](https://github.com/samuelmsilva2v/assets/blob/main/apiUnionsGrupo/Modelo_Unions_Page_9.png)\n![](https://github.com/samuelmsilva2v/assets/blob/main/apiUnionsGrupo/Modelo_Unions_Page_10.png)\n![](https://github.com/samuelmsilva2v/assets/blob/main/apiUnionsGrupo/Modelo_Unions_Page_11.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsamuelmsilva2v%2Fapiunionsgrupo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsamuelmsilva2v%2Fapiunionsgrupo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsamuelmsilva2v%2Fapiunionsgrupo/lists"}