@@ -9,6 +9,15 @@ import { UserEntity } from '../../user/user.entity';
99import { sendInvitationToGroup } from '../../email/send-email' ;
1010import { AddedUserInGroupDs } from '../application/data-sctructures/added-user-in-group.ds' ;
1111import { StripeUtil } from '../../user/utils/stripe-util' ;
12+ import { Constants } from '../../../helpers/constants/constants' ;
13+ import { buildConnectionEntitiesFromTestDtos } from '../../user/utils/build-connection-entities-from-test-dtos' ;
14+ import { ConnectionEntity } from '../../connection/connection.entity' ;
15+ import { buildDefaultAdminGroups } from '../../user/utils/build-default-admin-groups' ;
16+ import { GroupEntity } from '../group.entity' ;
17+ import { buildDefaultAdminPermissions } from '../../user/utils/build-default-admin-permissions' ;
18+ import { PermissionEntity } from '../../permission/permission.entity' ;
19+ import { TableSettingsEntity } from '../../table-settings/table-settings.entity' ;
20+ import { buildTestTableSettings } from '../../user/utils/build-test-table-settings' ;
1221
1322@Injectable ( { scope : Scope . REQUEST } )
1423export class AddUserInGroupUseCase
@@ -79,6 +88,36 @@ export class AddUserInGroupUseCase
7988 savedUser . stripeId = await StripeUtil . createUserStripeCustomerAndReturnStripeId ( savedUser . id ) ;
8089 savedUser = await this . _dbContext . userRepository . saveUserEntity ( newUser ) ;
8190 }
91+ const testConnections = Constants . getTestConnectionsArr ( ) ;
92+ const testConnectionsEntities = buildConnectionEntitiesFromTestDtos ( testConnections ) ;
93+ const createdTestConnections = await Promise . all (
94+ testConnectionsEntities . map ( async ( connection ) : Promise < ConnectionEntity > => {
95+ connection . author = savedUser ;
96+ return await this . _dbContext . connectionRepository . saveNewConnection ( connection ) ;
97+ } ) ,
98+ ) ;
99+ const testGroupsEntities = buildDefaultAdminGroups ( savedUser , createdTestConnections ) ;
100+ const createdTestGroups = await Promise . all (
101+ testGroupsEntities . map ( async ( group : GroupEntity ) => {
102+ return await this . _dbContext . groupRepository . saveNewOrUpdatedGroup ( group ) ;
103+ } ) ,
104+ ) ;
105+ const testPermissionsEntities = buildDefaultAdminPermissions ( createdTestGroups ) ;
106+ await Promise . all (
107+ testPermissionsEntities . map ( async ( permission : PermissionEntity ) => {
108+ await this . _dbContext . permissionRepository . saveNewOrUpdatedPermission ( permission ) ;
109+ } ) ,
110+ ) ;
111+ const testTableSettingsArrays : Array < Array < TableSettingsEntity > > = buildTestTableSettings ( createdTestConnections ) ;
112+ await Promise . all (
113+ testTableSettingsArrays . map ( async ( array : Array < TableSettingsEntity > ) => {
114+ await Promise . all (
115+ array . map ( async ( tableSettings : TableSettingsEntity ) => {
116+ await this . _dbContext . tableSettingsRepository . saveNewOrUpdatedSettings ( tableSettings ) ;
117+ } ) ,
118+ ) ;
119+ } ) ,
120+ ) ;
82121 const savedInvitation = await this . _dbContext . userInvitationRepository . createOrUpdateInvitationEntity ( savedUser ) ;
83122 foundGroup . users . push ( newUser ) ;
84123 const savedGroup = await this . _dbContext . groupRepository . saveNewOrUpdatedGroup ( foundGroup ) ;
0 commit comments