mirror of
https://github.com/SyncrowIOT/backend.git
synced 2025-11-26 23:14:53 +00:00
feat(device): add endpoint to add device to user
This commit is contained in:
@ -9,6 +9,10 @@ export class DeviceDto {
|
||||
@IsNotEmpty()
|
||||
spaceUuid: string;
|
||||
|
||||
@IsString()
|
||||
@IsNotEmpty()
|
||||
userUuid: string;
|
||||
|
||||
@IsString()
|
||||
@IsNotEmpty()
|
||||
deviceTuyaUuid: string;
|
||||
|
||||
@ -5,9 +5,10 @@ import { GroupDeviceEntity } from '../../group-device/entities';
|
||||
import { SpaceEntity } from '../../space/entities';
|
||||
import { ProductEntity } from '../../product/entities';
|
||||
import { DeviceUserPermissionEntity } from '../../device-user-permission/entities';
|
||||
import { UserEntity } from '../../user/entities';
|
||||
|
||||
@Entity({ name: 'device' })
|
||||
@Unique(['spaceDevice', 'deviceTuyaUuid'])
|
||||
@Unique(['deviceTuyaUuid'])
|
||||
export class DeviceEntity extends AbstractEntity<DeviceDto> {
|
||||
@Column({
|
||||
nullable: false,
|
||||
@ -20,6 +21,9 @@ export class DeviceEntity extends AbstractEntity<DeviceDto> {
|
||||
})
|
||||
isActive: true;
|
||||
|
||||
@ManyToOne(() => UserEntity, (user) => user.userSpaces, { nullable: false })
|
||||
user: UserEntity;
|
||||
|
||||
@OneToMany(
|
||||
() => DeviceUserPermissionEntity,
|
||||
(permission) => permission.device,
|
||||
@ -36,7 +40,7 @@ export class DeviceEntity extends AbstractEntity<DeviceDto> {
|
||||
userGroupDevices: GroupDeviceEntity[];
|
||||
|
||||
@ManyToOne(() => SpaceEntity, (space) => space.devicesSpaceEntity, {
|
||||
nullable: false,
|
||||
nullable: true,
|
||||
})
|
||||
spaceDevice: SpaceEntity;
|
||||
|
||||
|
||||
@ -4,6 +4,7 @@ import { UserDto } from '../dtos';
|
||||
import { AbstractEntity } from '../../abstract/entities/abstract.entity';
|
||||
import { UserSpaceEntity } from '../../user-space/entities';
|
||||
import { UserRoleEntity } from '../../user-role/entities';
|
||||
import { DeviceEntity } from '../../device/entities';
|
||||
|
||||
@Entity({ name: 'user' })
|
||||
export class UserEntity extends AbstractEntity<UserDto> {
|
||||
@ -53,6 +54,9 @@ export class UserEntity extends AbstractEntity<UserDto> {
|
||||
@OneToMany(() => UserSpaceEntity, (userSpace) => userSpace.user)
|
||||
userSpaces: UserSpaceEntity[];
|
||||
|
||||
@OneToMany(() => DeviceEntity, (userDevice) => userDevice.user)
|
||||
userDevice: DeviceEntity[];
|
||||
|
||||
@OneToMany(
|
||||
() => DeviceUserPermissionEntity,
|
||||
(userPermission) => userPermission.user,
|
||||
|
||||
Reference in New Issue
Block a user