resolve conflict with dev branch

This commit is contained in:
faris Aljohari
2024-05-21 16:20:05 +03:00
parent 79c238f7d3
commit cc006ff3c0

View File

@ -4,6 +4,7 @@ import {
HttpException, HttpException,
HttpStatus, HttpStatus,
NotFoundException, NotFoundException,
BadRequestException,
} from '@nestjs/common'; } from '@nestjs/common';
import { TuyaContext } from '@tuya/tuya-connector-nodejs'; import { TuyaContext } from '@tuya/tuya-connector-nodejs';
import { ConfigService } from '@nestjs/config'; import { ConfigService } from '@nestjs/config';
@ -17,6 +18,7 @@ import {
GetDeviceDetailsFunctionsStatusInterface, GetDeviceDetailsFunctionsStatusInterface,
GetDeviceDetailsInterface, GetDeviceDetailsInterface,
controlDeviceInterface, controlDeviceInterface,
updateDeviceFirmwareInterface,
} from '../interfaces/get.device.interface'; } from '../interfaces/get.device.interface';
import { import {
GetDeviceByGroupIdDto, GetDeviceByGroupIdDto,
@ -26,9 +28,9 @@ import { ControlDeviceDto } from '../dtos/control.device.dto';
import { convertKeysToCamelCase } from '@app/common/helper/camelCaseConverter'; import { convertKeysToCamelCase } from '@app/common/helper/camelCaseConverter';
import { DeviceRepository } from '@app/common/modules/device/repositories'; import { DeviceRepository } from '@app/common/modules/device/repositories';
import { GroupDeviceRepository } from '@app/common/modules/group-device/repositories'; import { GroupDeviceRepository } from '@app/common/modules/group-device/repositories';
import { ProductType } from '@app/common/constants/product-type.enum';
import { PermissionType } from '@app/common/constants/permission-type.enum'; import { PermissionType } from '@app/common/constants/permission-type.enum';
import { In } from 'typeorm'; import { In } from 'typeorm';
import { ProductType } from '@app/common/constants/product-type.enum';
@Injectable() @Injectable()
export class DeviceService { export class DeviceService {
@ -47,7 +49,17 @@ export class DeviceService {
secretKey, secretKey,
}); });
} }
private async getDeviceByDeviceUuid(
deviceUuid: string,
withProductDevice: boolean = true,
) {
return await this.deviceRepository.findOne({
where: {
uuid: deviceUuid,
},
...(withProductDevice && { relations: ['productDevice'] }),
});
}
async getDevicesByRoomId( async getDevicesByRoomId(
getDeviceByRoomUuidDto: GetDeviceByRoomUuidDto, getDeviceByRoomUuidDto: GetDeviceByRoomUuidDto,
userUuid: string, userUuid: string,
@ -251,12 +263,6 @@ export class DeviceService {
deviceUuid, deviceUuid,
); );
const deviceDetails = await this.deviceRepository.findOne({
where: {
uuid: deviceUuid,
},
relations: ['productDevice'],
});
const deviceDetails = await this.getDeviceByDeviceUuid(deviceUuid); const deviceDetails = await this.getDeviceByDeviceUuid(deviceUuid);
if (!deviceDetails) { if (!deviceDetails) {
@ -405,6 +411,18 @@ export class DeviceService {
); );
} }
} }
private async getUserDevicePermission(userUuid: string, deviceUuid: string) {
const device = await this.deviceRepository.findOne({
where: {
uuid: deviceUuid,
permission: {
userUuid: userUuid,
},
},
relations: ['permission', 'permission.permissionType'],
});
return device.permission[0].permissionType.type;
}
async getDevicesInGetaway(gatewayUuid: string) { async getDevicesInGetaway(gatewayUuid: string) {
try { try {
const deviceDetails = await this.getDeviceByDeviceUuid(gatewayUuid); const deviceDetails = await this.getDeviceByDeviceUuid(gatewayUuid);
@ -456,19 +474,6 @@ export class DeviceService {
); );
} }
} }
private async getDeviceByDeviceUuid(
deviceUuid: string,
withProductDevice: boolean = true,
) {
return await this.deviceRepository.findOne({
where: {
uuid: deviceUuid,
},
...(withProductDevice && { relations: ['productDevice'] }),
});
}
async updateDeviceFirmware(deviceUuid: string, firmwareVersion: number) { async updateDeviceFirmware(deviceUuid: string, firmwareVersion: number) {
try { try {
const deviceDetails = await this.getDeviceByDeviceUuid(deviceUuid, false); const deviceDetails = await this.getDeviceByDeviceUuid(deviceUuid, false);
@ -512,13 +517,4 @@ export class DeviceService {
); );
} }
} }
private async getUserDevicePermission(userUuid: string, deviceUuid: string) {
const device = await this.deviceRepository.findOne({
where: {
uuid: deviceUuid,
},
relations: ['permission', 'permission.permissionType'],
});
return device.permission[0].permissionType.type;
}
} }