Browse Source

Feature/rename Analytics to analytics in User database schema (#5032)

* Rename Analytics to analytics in User database schema
pull/5044/head
Thomas Kaul 4 days ago
committed by GitHub
parent
commit
5dfe9b54fe
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 20
      apps/api/src/app/admin/admin.service.ts
  2. 6
      apps/api/src/app/info/info.service.ts
  3. 10
      apps/api/src/app/user/user.service.ts
  4. 2
      prisma/schema.prisma

20
apps/api/src/app/admin/admin.service.ts

@ -648,7 +648,7 @@ export class AdminService {
if (this.configurationService.get('ENABLE_FEATURE_SUBSCRIPTION')) { if (this.configurationService.get('ENABLE_FEATURE_SUBSCRIPTION')) {
where = { where = {
NOT: { NOT: {
Analytics: null analytics: null
} }
}; };
} }
@ -806,13 +806,13 @@ export class AdminService {
if (this.configurationService.get('ENABLE_FEATURE_SUBSCRIPTION')) { if (this.configurationService.get('ENABLE_FEATURE_SUBSCRIPTION')) {
orderBy = { orderBy = {
Analytics: { analytics: {
lastRequestAt: 'desc' lastRequestAt: 'desc'
} }
}; };
where = { where = {
NOT: { NOT: {
Analytics: null analytics: null
} }
}; };
} }
@ -826,7 +826,7 @@ export class AdminService {
_count: { _count: {
select: { accounts: true, activities: true } select: { accounts: true, activities: true }
}, },
Analytics: { analytics: {
select: { select: {
activityCount: true, activityCount: true,
country: true, country: true,
@ -852,11 +852,11 @@ export class AdminService {
}); });
return usersWithAnalytics.map( return usersWithAnalytics.map(
({ _count, Analytics, createdAt, id, role, subscriptions }) => { ({ _count, analytics, createdAt, id, role, subscriptions }) => {
const daysSinceRegistration = const daysSinceRegistration =
differenceInDays(new Date(), createdAt) + 1; differenceInDays(new Date(), createdAt) + 1;
const engagement = Analytics const engagement = analytics
? Analytics.activityCount / daysSinceRegistration ? analytics.activityCount / daysSinceRegistration
: undefined; : undefined;
const subscription = const subscription =
@ -873,9 +873,9 @@ export class AdminService {
subscription, subscription,
accountCount: _count.accounts || 0, accountCount: _count.accounts || 0,
activityCount: _count.activities || 0, activityCount: _count.activities || 0,
country: Analytics?.country, country: analytics?.country,
dailyApiRequests: Analytics?.dataProviderGhostfolioDailyRequests || 0, dailyApiRequests: analytics?.dataProviderGhostfolioDailyRequests || 0,
lastActivity: Analytics?.updatedAt lastActivity: analytics?.updatedAt
}; };
} }
); );

6
apps/api/src/app/info/info.service.ts

@ -133,11 +133,11 @@ export class InfoService {
AND: [ AND: [
{ {
NOT: { NOT: {
Analytics: null analytics: null
} }
}, },
{ {
Analytics: { analytics: {
lastRequestAt: { lastRequestAt: {
gt: subDays(new Date(), aDays) gt: subDays(new Date(), aDays)
} }
@ -216,7 +216,7 @@ export class InfoService {
AND: [ AND: [
{ {
NOT: { NOT: {
Analytics: null analytics: null
} }
}, },
{ {

10
apps/api/src/app/user/user.service.ts

@ -182,7 +182,7 @@ export class UserService {
Access, Access,
accessToken, accessToken,
accounts, accounts,
Analytics, analytics,
authChallenge, authChallenge,
createdAt, createdAt,
id, id,
@ -198,7 +198,7 @@ export class UserService {
accounts: { accounts: {
include: { platform: true } include: { platform: true }
}, },
Analytics: true, analytics: true,
Settings: true, Settings: true,
subscriptions: true subscriptions: true
}, },
@ -217,9 +217,9 @@ export class UserService {
Settings: Settings as UserWithSettings['Settings'], Settings: Settings as UserWithSettings['Settings'],
thirdPartyId, thirdPartyId,
updatedAt, updatedAt,
activityCount: Analytics?.activityCount, activityCount: analytics?.activityCount,
dataProviderGhostfolioDailyRequests: dataProviderGhostfolioDailyRequests:
Analytics?.dataProviderGhostfolioDailyRequests analytics?.dataProviderGhostfolioDailyRequests
}; };
if (user?.Settings) { if (user?.Settings) {
@ -388,7 +388,7 @@ export class UserService {
frequency = 6; frequency = 6;
} }
if (Analytics?.activityCount % frequency === 1) { if (analytics?.activityCount % frequency === 1) {
currentPermissions.push(permissions.enableSubscriptionInterstitial); currentPermissions.push(permissions.enableSubscriptionInterstitial);
} }

2
prisma/schema.prisma

@ -247,6 +247,7 @@ model User {
accessToken String? accessToken String?
accounts Account[] accounts Account[]
activities Order[] activities Order[]
analytics Analytics?
apiKeys ApiKey[] apiKeys ApiKey[]
authChallenge String? authChallenge String?
createdAt DateTime @default(now()) createdAt DateTime @default(now())
@ -260,7 +261,6 @@ model User {
watchlist SymbolProfile[] @relation("UserWatchlist") watchlist SymbolProfile[] @relation("UserWatchlist")
Access Access[] @relation("accessGet") Access Access[] @relation("accessGet")
AccessGive Access[] @relation("accessGive") AccessGive Access[] @relation("accessGive")
Analytics Analytics?
AuthDevice AuthDevice[] AuthDevice AuthDevice[]
Settings Settings? Settings Settings?
SymbolProfile SymbolProfile[] SymbolProfile SymbolProfile[]

Loading…
Cancel
Save