{"id":19273218,"url":"https://github.com/monykpenafor/servidor_restaurante","last_synced_at":"2026-04-29T23:05:39.612Z","repository":{"id":253184125,"uuid":"842712732","full_name":"MonykPenafor/Servidor_Restaurante","owner":"MonykPenafor","description":"API Rest - Serviços de Restaurante. Projeto JAVA com Maven","archived":false,"fork":false,"pushed_at":"2024-09-21T00:09:06.000Z","size":1185,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-05T13:44:12.610Z","etag":null,"topics":["api","api-rest","cliente","java","maven","postgresql","postman","servidor"],"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/MonykPenafor.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":"2024-08-14T23:40:43.000Z","updated_at":"2024-09-21T00:09:09.000Z","dependencies_parsed_at":"2024-11-09T20:51:43.960Z","dependency_job_id":null,"html_url":"https://github.com/MonykPenafor/Servidor_Restaurante","commit_stats":null,"previous_names":["monykpenafor/servidor_restaurante"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MonykPenafor%2FServidor_Restaurante","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MonykPenafor%2FServidor_Restaurante/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MonykPenafor%2FServidor_Restaurante/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MonykPenafor%2FServidor_Restaurante/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MonykPenafor","download_url":"https://codeload.github.com/MonykPenafor/Servidor_Restaurante/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240378888,"owners_count":19792039,"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":["api","api-rest","cliente","java","maven","postgresql","postman","servidor"],"created_at":"2024-11-09T20:41:32.501Z","updated_at":"2026-04-29T23:05:39.528Z","avatar_url":"https://github.com/MonykPenafor.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Restaurante API - Servidor\n## Projeto: Sistema de Gestão de Vendas e Entregas de Refeições\n\nEste projeto é uma API REST desenvolvida em Java utilizando Maven. Ela fornece serviços para um restaurante, permitindo a gestão de pedidos, cardápios, e outras coisas de acordo com [este documento de especificação do software](https://github.com/MonykPenafor/Servidor_Restaurante/blob/main/Documento%20para%20cria%C3%A7%C3%A3o%20do%20software.pdf).\n\nTodos os serviços podem ser encontrados na pasta [servicos](src/main/java/ifmt/cba/servico).\n\nTenho um projeto que consome estes serviços mediante testes unitarios: [Cliente_Restaurante](https://github.com/MonykPenafor/Cliente_Restaurante/tree/main/src/main/java/ifmt/cba/dto).\n\n### Funcionalidades\n\n- **Gestão de Produtos**: Cadastro e manutenção de produtos utilizados nas refeições.\n- **Gestão de Grupos Alimentares**: Classificação de produtos em grupos alimentares.\n- **Gestão de Tipos de Preparo**: Definição dos custos de preparo dos itens do cardápio.\n- **Cardápios Diários**: Criação e gerenciamento de cardápios diários pelo chefe de cozinha.\n- **Sistema de Pedidos**: Realização de pedidos pelos clientes através do aplicativo.\n- **Controle de Estoque**: Gestão do estoque de produtos, incluindo entrada e baixa de itens.\n- **Relatórios para o Gerente-Geral**: Consultas sobre produção, descartes e desempenho do restaurante.\n\n### Banco de Dados\n\nO sistema utiliza um banco de dados relacional, sendo suportado pelas seguintes tecnologias:\n- **H2 Database**: Para testes e desenvolvimento local.\n- **PostgreSQL**: Para produção, com suporte a operações complexas e escalabilidade.\n\n\n### Estrutura do Projeto\n\n- **dto**: Data Transfer Objects para comunicação entre camadas.\n- **entity**: Classes de entidade representando os dados no banco.\n- **execução**: Scripts para povoamento básico do banco de dados.\n- **negocio**: Implementação das regras de negócio.\n- **persistencia**: Classes DAO (Data Access Object) para operações no banco de dados, serviços e utilitários.\n- **servico**: Implementação da lógica de serviços para acesso e manipulação de dados.\n- **util**: Classes utilitárias para funções auxiliares do sistema.\n\n\n### Tecnologias Utilizadas\n\n- **Java 19**: Linguagem de programação principal.\n- **Maven**: Gerenciamento de dependências e construção do projeto.\n- **Jersey**: Para a construção de APIs REST.\n- **Hibernate**: Para a persistência dos dados.\n- **ModelMapper**: Para a conversão entre objetos DTO e entidades.\n- **JUnit**: Para testes automatizados.\n\n\n ## User Stories\n\n- **US01**: Como Gerente de Produção, quero fazer a gestão do cadastro de produtos.\n- **US02**: Como Gerente de Produção, quero fazer a gestão do cadastro de grupos alimentares.\n- **US03**: Como Gerente de Produção, quero fazer a gestão do cadastro de tipos de preparo de alimentos.\n- **US04**: Como Chefe de Cozinha, quero fazer gestão de cardápios de refeições.\n- **US05**: Como Cliente, quero gerenciar meu perfil no aplicativo.\n- **US06**: Como Cliente, quero realizar um pedido de refeição a partir do cardápio do dia.\n- **US07**: Como Cliente, quero acompanhar o estado do meu pedido.\n- **US08**: Como Agente de Produção, quero consultar pedidos em estado Pendente.\n- **US09**: Como Agente de Produção, quero mudar o estado de um pedido para Pronto.\n- **US10**: Como Gerente de Produção, quero consultar pedidos prontos para entrega.\n- **US11**: Como Chefe de Cozinha, quero colocar um cardápio em produção.\n- **US12**: Como Gerente de Estoque, quero consultar produtos abaixo do estoque de segurança.\n- **US13**: Como Gerente de Estoque, quero registrar entrada de produtos no estoque.\n- **US14**: Como Gerente de Estoque, quero registrar a baixa de produtos descartados.\n- **US15**: Como Gerente-Geral, quero consultar a produção de refeições por dia.\n- **US16**: Como Gerente-Geral, quero consultar produtos descartados por período.\n- **US17**: Como Gerente-Geral, quero consultar produtos mais consumidos.\n- **US18**: Como Gerente-Geral, quero consultar produtos menos consumidos.\n- **US19**: Como Gerente-Geral, quero consultar o tempo médio de produção.\n- **US20**: Como Gerente-Geral, quero configurar um percentual de custo fixo.\n- **US21**: Como Gerente-Geral, quero consultar o tempo médio entre produção e entrega.\n- **US22**: Como Gerente-Geral, quero configurar tabela de custo de entrega por bairro.\n- **US23**: Como Administrador, quero gerir cadastro dos entregadores.\n- **US24**: Como Administrador, quero gerir cadastro de colaboradores internos.\n- **US25**: Como Entregador, quero registrar a finalização da entrega.\n- **US26**: Como Cliente, quero registrar avaliação do pedido recebido.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmonykpenafor%2Fservidor_restaurante","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmonykpenafor%2Fservidor_restaurante","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmonykpenafor%2Fservidor_restaurante/lists"}