Skip to content

Feat/ticket metrics operations#51

Open
YgorPereira wants to merge 17 commits into
developfrom
feat/ticket-metrics-operations
Open

Feat/ticket metrics operations#51
YgorPereira wants to merge 17 commits into
developfrom
feat/ticket-metrics-operations

Conversation

@YgorPereira
Copy link
Copy Markdown
Contributor

Criar rotas das métricas do chamado


Tipo do PR

  • fix (correção de bug)
  • feature (nova funcionalidade)
  • refactor (refatoração sem mudança de comportamento)
  • chore (tarefas técnicas, melhorias internas, configs, etc.)

O que foi feito nesta branch?

-Foi adicionado a rota de metricas dos tickets no backend

  • é possível ver o total de chamados, chamados por estação e métricas de tempo de atendimento
  • sobre o tempo, os calculos são feitas por um calculo do entre a data que foi aberta e data que foi fechada da soma de todos os tickets fechados
  • o número de tickets usado no calculo aparece em count, é possível ver o tempo médio em horas, minutos e dias

Instruções de como testar

  1. Rode a aplicação e acesse o swagger, logue
  2. teste a rota de get metrics
  3. Vc deve ter pelo menos um chamado fechado para que o average time (tempo médio) de atendimento de um número maior que 0

Revisores


GabrielViellCastilho and others added 17 commits March 23, 2026 10:02
Merge pull request #1 from Bug-Busters-F/chore/init-nest-project
* feat: new nest project

* feat: v1 ci pipeline

* chore: new pull request template and module example

* fix: fixing dep name

* fix other dep name

* feat(database): Adicionar conexão com MongoDB

Configura conexão inicial com MongoDB usando Mongoose na camada
de infraestrutura, incluindo tratamento básico de falhas.

* docs(backend): Add .env.example e guia de execucao

Adicionar .env.example para configuracao inicial.
Atualizar CONTRIBUTING.md com instrucoes de execucao do projeto.

* refactor(database): Renomear infra para database

Renomeia a pasta infra para database para refletir melhor a
responsabilidade do módulo.

Corrige o database.module.ts para carregar a URI do MongoDB
via variáveis de ambiente corretamente.

* Chore/messages schema (#3)

* add message-schema

* Continuação da estruturação da pasta Messages

* Arquivo principal, camada de Domain e Infra de Mensagens

* feat: database in memory for integration tests (#5)

* feat: database in memory for integration tests

* feat: add integration tests step in ci pipeline

* Feat/websocket (#7)

* Estrutura do WebSocket, ainda não finalizada

* Alteração no app.module.ts para testes. Funcionalidade do WebSocket testada

* Refact: Schema (message.schema.ts) e dos Repositórios (message.repository.ts e message.repository.mongodb.ts)

Feat: Websocket com Socket.IO

* Feat/user module (#6)

* feat/auth

* feat: add auth, group, user, company modules.

* feat: add swagger

* fix: validate related entities before creating user

* fix: UserController defined test

* fix: regenerate package-lock.json

* Feat/triage module (#9)

* feat(triage): serviço de categorização automática

Desenvolve serviço de triagem que analisa descrições de
chamados utilizando NLP.js para sugerir automaticamente
a categoria ou setor responsável com base em palavras-chave.

Também remove arquivos duplicados para corrigir inconsistências.

* feat(triage): Ajustar treino NLP e criar DTO teste

Ajustar os dados de treinamento do NLP e as rules para
garantir consistência com as categorias definidas

Criar DTO para possibilitar testes via rota exposta no
NestJS utilizando Swagger para validação do módulo

* fix(triage): Corrigir fallback

Normalizar o retorno do NLP para evitar que a intent "None"
seja considerada uma categoria válida durante a classificação

Garantir que casos sem correspondência retornem corretamente
a categoria OTHER através do fallback definido no serviço

* feat(tests): Adiciona testes automaticos

* Feat/user test (#10)

* feat: add user test

* fix: remove duplicate package.json

* Feat/ticket module (#8)

* feat: tickect domain entity structure

* feat: hydrating ticket domain entity

* feat: finished entity model for ticket artefact with  tests

* refactor: new enums to erros and event messages

* feat: ticket schema v1

* feat: initialize repository with an abstract class and test

* feat: ticket repository v1

* feat: finish repository with save function and improve the tests

* refactor: remove priority fiel from create and constructor input

* feat: usecases v1

* fix: fixing jest int config json

* feat: finished application layer v1

* feat: finish controller v1

* feat: module configuration and inject dependency

* feat: add ticket routes on swagger

---------

Co-authored-by: YgorPereira <ygor.pereira@autaza.com>

* Feat/category module (#13)

* feat(category): Adicionar modulo de categorias

Implementa o modulo de categorias de atendimento no sistema.
Inclui controller, service e integracao com MongoDB.

Permite criar, listar, atualizar e remover categorias.
Adiciona suporte a keywords, trainingPhrases e groupIds.

* fix(category): Validar existencia de grupos

Adiciona verificacao para garantir que os grupos
 existem ao criar ou editar uma categoria

* fix(category): Adicionar GroupService nos testes

Adiciona mock do GroupService para resolver erro de
injecao de dependencia no CategoryService durante os
testes de integracao

* Feat/chat module (#12)

* test: add unit tests

* feat: chat module v1

* Add files via upload

* refactor: allign chat module with ticket schema (agentId and groupId)

* refactor: integration guide

* test: test_mongo.js

* fix: correção crash no socket.io

* fix: remove extensões .js nos imports e atualiza dependências

---------

Co-authored-by: Davi Miyake Batista <davi.miyake@sjc.sp.gov.br>

* fix: fix create of chats and generate UUID on repository (#14)

* fix: add valitation flags on login dto (#15)

* Feat/ticket triage integration (#16)

* feat(category): Adiciona Categorias Iniciais

Adiciona categorias iniciais com keywords e trainingPhrases
para suporte à triagem automática com NLP.js.

* feat(triage): Integrar categorias com triagem

Integra o módulo de categorias com o fluxo de triagem,
permitindo que regras e NLP utilizem dados dinâmicos
vindos do banco de dados.

Adiciona método de busca por nome no CategoryService
para suportar fallback e resolução de categorias.

* feat(ticket): Integrar triagem na criação de chamado

Modifica o fluxo de criação de chamados para que a descrição
seja analisada previamente pelo serviço de triagem automática,
garantindo categorização antes do registro no banco de dados.

Integra o módulo de triagem ao módulo de ticket e ajusta o
TicketCategory para uso como string, pois as categorias agora
são persistidas no banco de dados.

* fix(rebase): Resolver conflito da rebase

Corrige um conflito que não havia sido alterado
quando foi feito a rebase da develop

* test(ticket): Ajustar specs para categorias dinâmicas

Atualiza os testes para remover o uso de TicketCategory
e alinhar com o novo fluxo de categorias via triagem.

* fix: roles for supports to allow support to entry in chats (#17)

* fix: merge conflicts

---------

Co-authored-by: YgorPereira <ygor.pereira@autaza.com>
Co-authored-by: YgorPereira <ygorrp25@gmail.com>
Co-authored-by: Humberto <humbertosjc@hotmail.com>
Co-authored-by: Humbertoishii <163201524+HumbertoIshii@users.noreply.github.com>
Co-authored-by: Vinicius Elias <95414991+ViniElias@users.noreply.github.com>
Co-authored-by: Ygor Pereira <107441120+YgorPereira@users.noreply.github.com>
Co-authored-by: Davi Miyake Batista <165038725+DaviMBDev@users.noreply.github.com>
Co-authored-by: Davi Miyake Batista <davi.miyake@sjc.sp.gov.br>
Co-authored-by: Diego Castilho <163672892+DigoCast@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants