Git Product home page Git Product logo

fa-help-duck-tickets's Introduction

Microsserviço para manipulação de chamados

Esta API, que permite o gerenciamento de chamados, foi desenvolvida visando sua utilização no projeto "Help Duck" (mais informações vide este link).

Aplicação desenvolvida por alunos do 3º semestre do tecnólogo em Desenvolvimento de Software Multiplataforma, na FATEC Profº Jessen Vidal - São José dos Campos, SP 🚀

🛠️ Tecnologias

As seguintes tecnologias e ferramentas foram utilizadas neste projeto: Java, Spring, MongoDB, Docker, Insomnia, Heroku

⚙️ Como utilizar

Para consumir esta API, é preciso seguir o passo a passo abaixo ou utilizar a URL do serviço em nuvem (através deste link: https://help-duck-tickets.herokuapp.com/tickets/).

  • Tutorial para rodar o projeto

No arquivo application-dev.properties, complete a variavel "spring.data.mongodb.uri" com a URI que o mongo disponibiliza ao logar na plataforma do MongoDB (Deployment -> Database -> connect -> connect your application). Se for localhost, utilize suas credenciais no formato da URI ( mongodb://:@localhost/ ):

Print do mongoDB atlas connect URI

image

spring.data.mongodb.uri=mongodb+srv://<username>:<password>@cluster0.rpjin.mongodb.net/myFirstDatabase?retryWrites=true&w=majority

Para prosseguir, é preciso que todas as ferramentas necessárias estejam devidamente instaladas (Java, Git, MongoDb...). Para conferir a instalação delas, acesse este tutorial. Após os downloads, baixe ou clone este repositório pelo terminal seguindo passo a passo descrito abaixo:

# Baixe este repositório ou clone pelo Git usando o comando:
$ git clone https://github.com/The-Bugger-Ducks/help-duck-tickets.git

# Acesse a pasta do projeto
$ cd help-duck-tickets

# Espere o Maven carregar as dependências do projeto (são listadas no arquivo pom.xml)

# Execute o projeto utilizando sua IDE preferida (Eclipse, VS Code, IntelliJ, etc.)

O servidor inciará localmente na porta 8081. Use o Insomnia para simular requisições e respostas das rotas (pelo link https://localhost:8081) ou utilize o projeto fron-end do "Help Duck" para executar as funcionalidades da aplicação (acesse o repositório por este link).

🛤️ Rotas disponíveis

Tipo Rota Ação


Controle de chamados
/tickets/ Listagem de chamados
/tickets/{ticketId} Dados de um chamado específico
/tickets/user/{userId} Chamados de um usuário comum específico
/tickets/support/{userId} Chamados de um usuário suporte específico
/tickets/status/{statusToFind} Chamados com um status específico
/tickets/create Cadastro de chamados
/tickets/update Alteração dos dados do chamado
/tickets/delete/{ticketId} Exclusão de chamados
/tickets/search Busca de chamados por título e/ou suporte e/ou cliente e/ou status


Controle de ações do usuário
/helpUser/reserveTicket/{ticketId} Reserva de chamados
/helpUser/updateComment/{ticketId} Adição de comentário no chamado
/helpUser/closeTicket/{ticketId} Fechamento de chamado por um usuário suporte

Explicação da estrutura das pastas

Pasta Definição
📂 main/ .../ Arquivos com o código fonte do projeto
📂 main/ .../ config Configuração de cors, csrf, etc
📂 main/ .../ controller Arquivos com os métodos de requisição das rotas
📂 main/ .../ entity Arquivos com funções mais especificas, ex: atualizador, adicionador de links para HATEOAS, etc
📂 main/ .../ enums Arquivos de padronização de entrada para campos específicos no banco de dados
📂 main/ .../ interfaces Arquivos que constam as interfaces criadas e utilizadas no projeto
📂 main/ .../ model Arquivos que fazem a aplicação de HATEOAS e manipulação de dados
📂 main/ .../ repository Arquivos para utilização de CRUD de entidades (collection - mongodb) do projeto
📂 main/ .../ service Arquivos que contém os serviços utilizados no projeto
📄 main/ .../ HelpDuckTicketsApplication.java Arquivo principal do projeto
📂 main/ resources/ Arquivos para configurações globais do projeto (ex: credenciais em banco de dados)
📄 docker-compose Arquivo usado para "conteinerizar" um banco mongo local
📄 pom.xml Arquivo usado gerenciar as dependencias do projeto com o Maven

fa-help-duck-tickets's People

Contributors

gabrielcamargol avatar mariagabrielareis avatar caiovitordias1 avatar thhenrique avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.