Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/renannrocha/mission-manager-flask-pr
Projeto da Disciplina - Sistema de Gerenciamento de Expedição Espacial
https://github.com/renannrocha/mission-manager-flask-pr
Last synced: about 7 hours ago
JSON representation
Projeto da Disciplina - Sistema de Gerenciamento de Expedição Espacial
- Host: GitHub
- URL: https://github.com/renannrocha/mission-manager-flask-pr
- Owner: renannrocha
- Created: 2024-10-17T22:32:38.000Z (22 days ago)
- Default Branch: main
- Last Pushed: 2024-11-02T15:34:57.000Z (6 days ago)
- Last Synced: 2024-11-02T16:23:47.738Z (6 days ago)
- Language: Python
- Homepage:
- Size: 363 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# mission-manager-flask-pr
Projeto da Disciplina - Sistema de Gerenciamento de Expedição Espacial
> [!IMPORTANT]
> O relatório RAD do projeto esta disponível na pasta: /docs/RelatorioRAD.pdf## **Comandos para execução da API**
1. **realizar a instalação das dependencias**
```
python -m pip install -r .\resources\requirements.txt
```2. **criar a pasta env**
```
python -m venv env
```3. **ativar os recuros**
```
.\env\Scripts\activate
```4. **executar a aplicação**
```
python main.py
```## **Endpoints da API**
### **1. `POST /missions/add`**
Adiciona uma nova missão ao sistema.- **Corpo da Requisição**:
```json
{
"name": "Apollo 11",
"launchDate": "1969-07-16",
"destination": "Moon",
"status": "completed",
"crew": "Neil Armstrong, Buzz Aldrin",
"payload": "Lunar Module",
"duration": "8 days",
"cost": 1000000.0,
"missionInfo": "First manned mission to the moon"
}
```- **Campos obrigatórios**:
- `name` (string)
- `launchDate` (string, formato: "YYYY-MM-DD")
- `destination` (string)
- `missionStatus` (string, valor do enum `MissionStatus`)
- `cost` (float)- **Resposta de Sucesso**:
```json
{
"message": "Mission created successfully!",
"id": 11
}
```### **2. `GET /missions/get`**
Busca missões com base no intervalo de datas fornecido.- **Parâmetros de Query**:
```json
{
"startDate": "1969-07-16",
"endDate": "1969-07-16"
}
```- **Campos obrigatórios**:
- `startDate` (string, formato: "YYYY-MM-DD")
- `endDate` (string, formato: "YYYY-MM-DD")- **Resposta de Sucesso**:
```json
[
{
"id": 11,
"name": "Apollo 11",
"launchDate": "1969-07-16",
"destination": "Moon",
"status": "completed",
"crew": "Neil Armstrong, Buzz Aldrin",
"payload": "Lunar Module",
"duration": "8 days",
"cost": "1000000.00",
"missionInfo": "First manned mission to the moon"
}
]
```### **3. `PUT /missions/update/`**
Atualiza os dados de uma missão específica.- **Parametros obrigatório**:
- `id` (int)- **Corpo da Requisição**:
```json
{
"name": "Nome da missão (opcional)",
"launchDate": "YYYY-MM-DD (opcional)",
"destination": "Destino da missão (opcional)",
"status": "Status da missão (opcional)",
"crew": "Tripulação da missão (opcional)",
"payload": "Carga útil da missão (opcional)",
"duration": "Duração da missão (opcional)",
"cost": 12345.67,
"missionInfo": "Informações adicionais sobre a missão (opcional)"
}
```- **Resposta de Sucesso**:
```json
{
"message": "Mission updated successfully!"
}
```### **5. `DELETE /missions/delete/`**
Remove uma missão específica do sistema.- **Parametros obrigatório**:
- `id` (int)- **Resposta de Sucesso**:
```json
{
"message": "Mission deleted successfully!"
}
```