mirror of
https://github.com/SyncrowIOT/backend.git
synced 2025-07-17 03:05:13 +00:00
Merge pull request #115 from SyncrowIOT/SP-700-error-message-on-device-factory-reset-process
finished soft delete devices
This commit is contained in:
@ -85,6 +85,7 @@ export class DeviceStatusFirebaseService {
|
||||
return await this.deviceRepository.findOne({
|
||||
where: {
|
||||
deviceTuyaUuid,
|
||||
isActive: true,
|
||||
},
|
||||
relations: ['productDevice'],
|
||||
});
|
||||
@ -139,6 +140,7 @@ export class DeviceStatusFirebaseService {
|
||||
return await this.deviceRepository.findOne({
|
||||
where: {
|
||||
uuid: deviceUuid,
|
||||
isActive: true,
|
||||
},
|
||||
...(withProductDevice && { relations: ['productDevice'] }),
|
||||
});
|
||||
|
@ -18,8 +18,9 @@ export class DeviceEntity extends AbstractEntity<DeviceDto> {
|
||||
@Column({
|
||||
nullable: true,
|
||||
default: true,
|
||||
type: 'boolean',
|
||||
})
|
||||
isActive: true;
|
||||
isActive: boolean;
|
||||
|
||||
@ManyToOne(() => UserEntity, (user) => user.userSpaces, { nullable: false })
|
||||
user: UserEntity;
|
||||
|
@ -62,6 +62,7 @@ export class DeviceService {
|
||||
return await this.deviceRepository.findOne({
|
||||
where: {
|
||||
uuid: deviceUuid,
|
||||
isActive: true,
|
||||
},
|
||||
...(withProductDevice && { relations: ['productDevice'] }),
|
||||
});
|
||||
@ -70,6 +71,7 @@ export class DeviceService {
|
||||
return await this.deviceRepository.findOne({
|
||||
where: {
|
||||
deviceTuyaUuid,
|
||||
isActive: true,
|
||||
},
|
||||
relations: ['productDevice'],
|
||||
});
|
||||
@ -126,6 +128,7 @@ export class DeviceService {
|
||||
const devices = await this.deviceRepository.find({
|
||||
where: {
|
||||
user: { uuid: userUuid },
|
||||
isActive: true,
|
||||
permission: {
|
||||
userUuid,
|
||||
permissionType: {
|
||||
@ -172,6 +175,7 @@ export class DeviceService {
|
||||
const devices = await this.deviceRepository.find({
|
||||
where: {
|
||||
spaceDevice: { uuid: getDeviceByRoomUuidDto.roomUuid },
|
||||
isActive: true,
|
||||
permission: {
|
||||
userUuid,
|
||||
permissionType: {
|
||||
@ -221,6 +225,7 @@ export class DeviceService {
|
||||
const device = await this.deviceRepository.findOne({
|
||||
where: {
|
||||
uuid: updateDeviceInRoomDto.deviceUuid,
|
||||
isActive: true,
|
||||
},
|
||||
relations: ['spaceDevice', 'spaceDevice.parent'],
|
||||
});
|
||||
@ -407,7 +412,7 @@ export class DeviceService {
|
||||
}
|
||||
async checkAllDevicesHaveSameProductUuid(deviceUuids: string[]) {
|
||||
const firstDevice = await this.deviceRepository.findOne({
|
||||
where: { uuid: deviceUuids[0] },
|
||||
where: { uuid: deviceUuids[0], isActive: true },
|
||||
relations: ['productDevice'],
|
||||
});
|
||||
|
||||
@ -419,7 +424,7 @@ export class DeviceService {
|
||||
|
||||
for (let i = 1; i < deviceUuids.length; i++) {
|
||||
const device = await this.deviceRepository.findOne({
|
||||
where: { uuid: deviceUuids[i] },
|
||||
where: { uuid: deviceUuids[i], isActive: true },
|
||||
relations: ['productDevice'],
|
||||
});
|
||||
|
||||
@ -463,6 +468,11 @@ export class DeviceService {
|
||||
if (operationResult.success) {
|
||||
// Add to success results if operationResult.success is true
|
||||
successResults.push({ deviceUuid, result: operationResult });
|
||||
// Update isActive to false in the repository for the successfully reset device
|
||||
await this.deviceRepository.update(
|
||||
{ uuid: deviceUuid },
|
||||
{ isActive: false },
|
||||
);
|
||||
} else {
|
||||
// Add to failed results if operationResult.success is false
|
||||
failedResults.push({ deviceUuid, error: operationResult.msg });
|
||||
@ -643,6 +653,7 @@ export class DeviceService {
|
||||
const device = await this.deviceRepository.findOne({
|
||||
where: {
|
||||
uuid: deviceUuid,
|
||||
isActive: true,
|
||||
permission: {
|
||||
userUuid: userUuid,
|
||||
},
|
||||
@ -774,6 +785,9 @@ export class DeviceService {
|
||||
parent: {
|
||||
uuid: unitUuid,
|
||||
},
|
||||
devicesSpaceEntity: {
|
||||
isActive: true,
|
||||
},
|
||||
},
|
||||
relations: ['devicesSpaceEntity', 'devicesSpaceEntity.productDevice'],
|
||||
});
|
||||
@ -808,6 +822,7 @@ export class DeviceService {
|
||||
async getAllDevices(): Promise<GetDeviceDetailsInterface[]> {
|
||||
try {
|
||||
const devices = await this.deviceRepository.find({
|
||||
where: { isActive: true },
|
||||
relations: [
|
||||
'spaceDevice.parent',
|
||||
'productDevice',
|
||||
|
@ -826,6 +826,7 @@ export class DoorLockService {
|
||||
return await this.deviceRepository.findOne({
|
||||
where: {
|
||||
uuid: deviceUuid,
|
||||
isActive: true,
|
||||
},
|
||||
...(withProductDevice && { relations: ['productDevice'] }),
|
||||
});
|
||||
|
@ -28,7 +28,7 @@ export class CheckProductUuidForAllDevicesGuard implements CanActivate {
|
||||
|
||||
async checkAllDevicesHaveSameProductUuid(deviceUuids: string[]) {
|
||||
const firstDevice = await this.deviceRepository.findOne({
|
||||
where: { uuid: deviceUuids[0] },
|
||||
where: { uuid: deviceUuids[0], isActive: true },
|
||||
relations: ['productDevice'],
|
||||
});
|
||||
|
||||
@ -40,7 +40,7 @@ export class CheckProductUuidForAllDevicesGuard implements CanActivate {
|
||||
|
||||
for (let i = 1; i < deviceUuids.length; i++) {
|
||||
const device = await this.deviceRepository.findOne({
|
||||
where: { uuid: deviceUuids[i] },
|
||||
where: { uuid: deviceUuids[i], isActive: true },
|
||||
relations: ['productDevice'],
|
||||
});
|
||||
|
||||
|
@ -55,6 +55,7 @@ export class CheckRoomGuard implements CanActivate {
|
||||
const response = await this.deviceRepository.findOne({
|
||||
where: {
|
||||
uuid: deviceUuid,
|
||||
isActive: true,
|
||||
},
|
||||
});
|
||||
|
||||
|
@ -58,7 +58,11 @@ export class CheckUserHaveControllablePermission implements CanActivate {
|
||||
deviceUuid: string,
|
||||
): Promise<string> {
|
||||
const device = await this.deviceRepository.findOne({
|
||||
where: { uuid: deviceUuid, permission: { userUuid: userUuid } },
|
||||
where: {
|
||||
uuid: deviceUuid,
|
||||
isActive: true,
|
||||
permission: { userUuid: userUuid },
|
||||
},
|
||||
relations: ['permission', 'permission.permissionType'],
|
||||
});
|
||||
|
||||
|
@ -59,7 +59,11 @@ export class CheckUserHavePermission implements CanActivate {
|
||||
deviceUuid: string,
|
||||
): Promise<string> {
|
||||
const device = await this.deviceRepository.findOne({
|
||||
where: { uuid: deviceUuid, permission: { userUuid: userUuid } },
|
||||
where: {
|
||||
uuid: deviceUuid,
|
||||
permission: { userUuid: userUuid },
|
||||
isActive: true,
|
||||
},
|
||||
relations: ['permission', 'permission.permissionType'],
|
||||
});
|
||||
|
||||
|
@ -298,6 +298,7 @@ export class ScheduleService {
|
||||
return await this.deviceRepository.findOne({
|
||||
where: {
|
||||
uuid: deviceUuid,
|
||||
isActive: true,
|
||||
},
|
||||
...(withProductDevice && { relations: ['productDevice'] }),
|
||||
});
|
||||
|
@ -440,6 +440,7 @@ export class VisitorPasswordService {
|
||||
productDevice: {
|
||||
prodType: ProductType.DL,
|
||||
},
|
||||
isActive: true,
|
||||
},
|
||||
});
|
||||
const data = [];
|
||||
@ -482,6 +483,7 @@ export class VisitorPasswordService {
|
||||
productDevice: {
|
||||
prodType: ProductType.DL,
|
||||
},
|
||||
isActive: true,
|
||||
},
|
||||
relations: ['productDevice'],
|
||||
});
|
||||
@ -823,6 +825,7 @@ export class VisitorPasswordService {
|
||||
return await this.deviceRepository.findOne({
|
||||
where: {
|
||||
uuid: deviceUuid,
|
||||
isActive: true,
|
||||
},
|
||||
...(withProductDevice && { relations: ['productDevice'] }),
|
||||
});
|
||||
|
Reference in New Issue
Block a user