Removed community user

This commit is contained in:
hannathkadher
2024-10-29 13:19:47 +04:00
parent 9aecb3c3bc
commit 84bcf098d3
4 changed files with 9 additions and 33 deletions

View File

@ -6,17 +6,11 @@ import { CommunityRepository } from '@app/common/modules/community/repositories'
export class CommunityPermissionService { export class CommunityPermissionService {
constructor(private readonly communityRepository: CommunityRepository) {} constructor(private readonly communityRepository: CommunityRepository) {}
async checkUserPermission( async checkUserPermission(communityUuid: string): Promise<void> {
communityUuid: string,
userUuid: string,
): Promise<void> {
try { try {
const communityData = await this.communityRepository.findOne({ const communityData = await this.communityRepository.findOne({
where: { where: {
uuid: communityUuid, uuid: communityUuid,
users: {
uuid: userUuid,
},
}, },
relations: ['users'], relations: ['users'],
}); });

View File

@ -1,16 +1,8 @@
import { import { Column, Entity, ManyToOne, OneToMany, Unique } from 'typeorm';
Column,
Entity,
ManyToMany,
ManyToOne,
OneToMany,
Unique,
} from 'typeorm';
import { AbstractEntity } from '../../abstract/entities/abstract.entity'; import { AbstractEntity } from '../../abstract/entities/abstract.entity';
import { CommunityDto } from '../dtos'; import { CommunityDto } from '../dtos';
import { RegionEntity } from '../../region/entities'; import { RegionEntity } from '../../region/entities';
import { SpaceEntity } from '../../space/entities'; import { SpaceEntity } from '../../space/entities';
import { UserEntity } from '../../user/entities';
@Entity({ name: 'community' }) @Entity({ name: 'community' })
@Unique(['name']) @Unique(['name'])
@ -40,6 +32,10 @@ export class CommunityEntity extends AbstractEntity<CommunityDto> {
@OneToMany(() => SpaceEntity, (space) => space.community) @OneToMany(() => SpaceEntity, (space) => space.community)
spaces: SpaceEntity[]; spaces: SpaceEntity[];
@ManyToMany(() => UserEntity, (user) => user.communities) @Column({
users: UserEntity[]; type: 'varchar',
length: 255,
nullable: true,
})
externalId: string;
} }

View File

@ -2,8 +2,6 @@ import {
Column, Column,
DeleteDateColumn, DeleteDateColumn,
Entity, Entity,
JoinTable,
ManyToMany,
ManyToOne, ManyToOne,
OneToMany, OneToMany,
Unique, Unique,
@ -28,7 +26,6 @@ import { OtpType } from '../../../../src/constants/otp-type.enum';
import { RoleTypeEntity } from '../../role-type/entities'; import { RoleTypeEntity } from '../../role-type/entities';
import { SpaceEntity } from '../../space/entities'; import { SpaceEntity } from '../../space/entities';
import { VisitorPasswordEntity } from '../../visitor-password/entities'; import { VisitorPasswordEntity } from '../../visitor-password/entities';
import { CommunityEntity } from '../../community/entities';
@Entity({ name: 'user' }) @Entity({ name: 'user' })
export class UserEntity extends AbstractEntity<UserDto> { export class UserEntity extends AbstractEntity<UserDto> {
@ -119,14 +116,6 @@ export class UserEntity extends AbstractEntity<UserDto> {
) )
public visitorPasswords: VisitorPasswordEntity[]; public visitorPasswords: VisitorPasswordEntity[];
@ManyToMany(() => CommunityEntity, (community) => community.users)
@JoinTable({
name: 'user_communities', // Join table to link users and communities
joinColumn: { name: 'user_id', referencedColumnName: 'uuid' },
inverseJoinColumn: { name: 'community_id', referencedColumnName: 'uuid' },
})
communities: CommunityEntity[];
constructor(partial: Partial<UserEntity>) { constructor(partial: Partial<UserEntity>) {
super(); super();
Object.assign(this, partial); Object.assign(this, partial);

View File

@ -33,10 +33,7 @@ export class CommunityPermissionGuard implements CanActivate {
throw new BadRequestException('communityUuid is required'); throw new BadRequestException('communityUuid is required');
} }
await this.permissionService.checkUserPermission( await this.permissionService.checkUserPermission(communityUuid);
communityUuid,
user.uuid,
);
return true; return true;
} catch (error) { } catch (error) {