finished soft delete devices

This commit is contained in:
faris Aljohari
2024-10-07 23:11:16 -05:00
parent e2490515b0
commit 6bfb64370a
10 changed files with 39 additions and 7 deletions

View File

@ -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',