Closed GabrielCamargoL closed 1 year ago
NestJS, Prisma, PostgresSQL, Insomnia, VSCODE, beekeeper Studio portable
Fornecer as seguintes informações a serem exibidas no dashboard:
Adição do modulo de Dashboard
As prints são da mesma chamada, cortei para organizar melhor a vizualização
URL: domain.api.com.br/dashboard Method: GET
Controller
@Get() @UseGuards(AuthGuard('jwt')) async index() { return await this.dashboardService.dashboard(); }
Service
@Injectable() export class DashboardService { constructor(private readonly prismaService: PrismaService) { } async dashboard() { const totalActivePartners = await this.prismaService.partner.count({ where: { disabled: false } }); const partnersPerStatus = await this.prismaService.partner.groupBy({ by: ['status'], where: { disabled: false }, _count: true, orderBy: { status: 'asc' } }); const partnersPerState = await this.prismaService.partner.groupBy({ by: ['state'], where: { disabled: false }, _count: true, orderBy: { _count: { state: 'desc' } } }); const partnerPerClassification = await this.prismaService.partner.groupBy({ by: ['classification'], where: { disabled: false }, _count: true }); const top10MostMembers = await this.prismaService.partner.findMany({ where: { disabled: false }, orderBy: { memberNumber: 'desc', }, take: 10 }); const nextMeeting = await this.prismaService.meeting.findFirst({ where: { meetingDateTime: { gt: getCurrentBrDateTimeISO() }, Partner: { disabled: false } }, include: { Partner: true }, orderBy: { meetingDateTime: 'asc' } }); return { totalActivePartners, top10MostMembers, partnersPerStatus, partnersPerState, partnerPerClassification, nextMeeting } } }
Documentação
Tecnologias
NestJS, Prisma, PostgresSQL, Insomnia, VSCODE, beekeeper Studio portable
Descrição
Fornecer as seguintes informações a serem exibidas no dashboard:
Issues Relacionada
40
Lista de Mudanças
Adição do modulo de Dashboard
DASHBOARD
As prints são da mesma chamada, cortei para organizar melhor a vizualização
Total de parcerias ativas e top 10 parcerias com mais membros
GroupBy das parcerias ativas por: status, estado e classificação
Reunião mais proxima e o respectivo parceiro envolvido
URL: domain.api.com.br/dashboard Method: GET
Controller
Service