feat: add power clamp entities, DTOs, and repository for energy consumption tracking

This commit is contained in:
faris Aljohari
2025-04-23 15:08:51 +03:00
parent ce7fc0114e
commit 8228ccc293
10 changed files with 202 additions and 1 deletions

View File

@ -18,6 +18,7 @@ import {
runTransaction,
} from 'firebase/database';
import { DeviceStatusLogRepository } from '@app/common/modules/device-status-log/repositories';
import { ProductType } from '@app/common/constants/product-type.enum';
@Injectable()
export class DeviceStatusFirebaseService {
private tuya: TuyaContext;
@ -74,6 +75,19 @@ export class DeviceStatusFirebaseService {
const device = await this.getDeviceByDeviceTuyaUuid(
addDeviceStatusDto.deviceTuyaUuid,
);
if (device.productDevice.prodType === ProductType.PC) {
const energyStatus = addDeviceStatusDto.status.find(
(status) =>
status.code === 'EnergyConsumed' ||
status.code === 'EnergyConsumedA' ||
status.code === 'EnergyConsumedB' ||
status.code === 'EnergyConsumedC',
);
if (energyStatus) {
console.log(device.productDevice.prodType, addDeviceStatusDto.status);
}
}
if (device?.uuid) {
return await this.createDeviceStatusFirebase({