From d54a04f825b82140c4c06a25ec468b42708f8f06 Mon Sep 17 00:00:00 2001 From: ogerly Date: Tue, 16 Aug 2022 13:53:36 +0200 Subject: [PATCH] remove statistics files --- admin/src/graphql/communityStatistics.js | 15 ---- backend/src/auth/RIGHTS.ts | 1 - .../src/graphql/model/CommunityStatistics.ts | 26 ------- .../graphql/resolver/StatisticsResolver.ts | 77 ------------------- 4 files changed, 119 deletions(-) delete mode 100644 admin/src/graphql/communityStatistics.js delete mode 100644 backend/src/graphql/model/CommunityStatistics.ts delete mode 100644 backend/src/graphql/resolver/StatisticsResolver.ts diff --git a/admin/src/graphql/communityStatistics.js b/admin/src/graphql/communityStatistics.js deleted file mode 100644 index 868bfd02a..000000000 --- a/admin/src/graphql/communityStatistics.js +++ /dev/null @@ -1,15 +0,0 @@ -import gql from 'graphql-tag' - -export const communityStatistics = gql` - query { - communityStatistics { - totalUsers - activeUsers - deletedUsers - totalGradidoCreated - totalGradidoDecayed - totalGradidoAvailable - totalGradidoUnbookedDecayed - } - } -` diff --git a/backend/src/auth/RIGHTS.ts b/backend/src/auth/RIGHTS.ts index a58d0aa2b..1e38eab7f 100644 --- a/backend/src/auth/RIGHTS.ts +++ b/backend/src/auth/RIGHTS.ts @@ -48,5 +48,4 @@ export enum RIGHTS { CREATE_CONTRIBUTION_LINK = 'CREATE_CONTRIBUTION_LINK', DELETE_CONTRIBUTION_LINK = 'DELETE_CONTRIBUTION_LINK', UPDATE_CONTRIBUTION_LINK = 'UPDATE_CONTRIBUTION_LINK', - COMMUNITY_STATISTICS = 'COMMUNITY_STATISTICS', } diff --git a/backend/src/graphql/model/CommunityStatistics.ts b/backend/src/graphql/model/CommunityStatistics.ts deleted file mode 100644 index 61354115c..000000000 --- a/backend/src/graphql/model/CommunityStatistics.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { ObjectType, Field } from 'type-graphql' -import Decimal from 'decimal.js-light' - -@ObjectType() -export class CommunityStatistics { - @Field(() => Number) - totalUsers: number - - @Field(() => Number) - activeUsers: number - - @Field(() => Number) - deletedUsers: number - - @Field(() => Decimal) - totalGradidoCreated: Decimal - - @Field(() => Decimal) - totalGradidoDecayed: Decimal - - @Field(() => Decimal) - totalGradidoAvailable: Decimal - - @Field(() => Decimal) - totalGradidoUnbookedDecayed: Decimal -} diff --git a/backend/src/graphql/resolver/StatisticsResolver.ts b/backend/src/graphql/resolver/StatisticsResolver.ts deleted file mode 100644 index 4c1500839..000000000 --- a/backend/src/graphql/resolver/StatisticsResolver.ts +++ /dev/null @@ -1,77 +0,0 @@ -import { Resolver, Query, Authorized } from 'type-graphql' -import { RIGHTS } from '@/auth/RIGHTS' -import { CommunityStatistics } from '@model/CommunityStatistics' -import { User as DbUser } from '@entity/User' -import { Transaction as DbTransaction } from '@entity/Transaction' -import { getConnection } from '@dbTools/typeorm' -import Decimal from 'decimal.js-light' -import { calculateDecay } from '@/util/decay' - -@Resolver() -export class StatisticsResolver { - @Authorized([RIGHTS.COMMUNITY_STATISTICS]) - @Query(() => CommunityStatistics) - async communityStatistics(): Promise { - const allUsers = await DbUser.find({ withDeleted: true }) - - let totalUsers = 0 - let activeUsers = 0 - let deletedUsers = 0 - - let totalGradidoAvailable: Decimal = new Decimal(0) - let totalGradidoUnbookedDecayed: Decimal = new Decimal(0) - - const receivedCallDate = new Date() - - for (let i = 0; i < allUsers.length; i++) { - if (allUsers[i].deletedAt) { - deletedUsers++ - } else { - totalUsers++ - const lastTransaction = await DbTransaction.findOne({ - where: { userId: allUsers[i].id }, - order: { balanceDate: 'DESC' }, - }) - if (lastTransaction) { - activeUsers++ - const decay = calculateDecay( - lastTransaction.balance, - lastTransaction.balanceDate, - receivedCallDate, - ) - if (decay) { - totalGradidoAvailable = totalGradidoAvailable.plus(decay.balance.toString()) - totalGradidoUnbookedDecayed = totalGradidoUnbookedDecayed.plus(decay.decay.toString()) - } - } - } - } - - const queryRunner = getConnection().createQueryRunner() - await queryRunner.connect() - - const { totalGradidoCreated } = await queryRunner.manager - .createQueryBuilder() - .select('SUM(transaction.amount) AS totalGradidoCreated') - .from(DbTransaction, 'transaction') - .where('transaction.typeId = 1') - .getRawOne() - - const { totalGradidoDecayed } = await queryRunner.manager - .createQueryBuilder() - .select('SUM(transaction.decay) AS totalGradidoDecayed') - .from(DbTransaction, 'transaction') - .where('transaction.decay IS NOT NULL') - .getRawOne() - - return { - totalUsers, - activeUsers, - deletedUsers, - totalGradidoCreated, - totalGradidoDecayed, - totalGradidoAvailable, - totalGradidoUnbookedDecayed, - } - } -}