mirror of
https://github.com/SyncrowIOT/backend.git
synced 2026-10-23 09:47:54 +00:00
added enums to replace constants
This commit is contained in:
@@ -1,11 +1,12 @@
|
||||
import { registerAs } from '@nestjs/config';
|
||||
import { BooleanValues } from '../constants/boolean-values.enum';
|
||||
|
||||
export default registerAs(
|
||||
'email-config',
|
||||
(): Record<string, any> => ({
|
||||
SMTP_HOST: process.env.SMTP_HOST,
|
||||
SMTP_PORT: parseInt(process.env.SMTP_PORT),
|
||||
SMTP_SECURE: process.env.SMTP_SECURE === 'true',
|
||||
SMTP_SECURE: process.env.SMTP_SECURE === BooleanValues.TRUE,
|
||||
SMTP_USER: process.env.SMTP_USER,
|
||||
SMTP_SENDER: process.env.SMTP_SENDER,
|
||||
SMTP_PASSWORD: process.env.SMTP_PASSWORD,
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { registerAs } from '@nestjs/config';
|
||||
import { BooleanValues } from '../constants/boolean-values.enum';
|
||||
|
||||
export default registerAs(
|
||||
'tuya-config',
|
||||
@@ -7,6 +8,6 @@ export default registerAs(
|
||||
TUYA_ACCESS_KEY: process.env.TUYA_ACCESS_KEY,
|
||||
TUYA_EU_URL: process.env.TUYA_EU_URL,
|
||||
TRUN_ON_TUYA_SOCKET:
|
||||
process.env.TRUN_ON_TUYA_SOCKET === 'true' ? true : false,
|
||||
process.env.TRUN_ON_TUYA_SOCKET === BooleanValues.TRUE ? true : false,
|
||||
}),
|
||||
);
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
// automation.enum.ts
|
||||
export enum ActionExecutorEnum {
|
||||
DEVICE_ISSUE = 'device_issue',
|
||||
DELAY = 'delay',
|
||||
}
|
||||
|
||||
export enum EntityTypeEnum {
|
||||
DEVICE_REPORT = 'device_report',
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
export enum BatteryStatus {
|
||||
RESIDUAL_ELECTRICITY = 'residual_electricity',
|
||||
BATTERY_PERCENTAGE = 'battery_percentage',
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
export enum BooleanValues {
|
||||
TRUE = 'true',
|
||||
FALSE = 'false',
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
export enum DaysEnum {
|
||||
SUN = 'Sun',
|
||||
MON = 'Mon',
|
||||
TUE = 'Tue',
|
||||
WED = 'Wed',
|
||||
THU = 'Thu',
|
||||
FRI = 'Fri',
|
||||
SAT = 'Sat',
|
||||
}
|
||||
|
||||
export enum EnableDisableStatusEnum {
|
||||
DISABLED = '0',
|
||||
ENABLED = '1',
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
export enum DeviceStatuses {
|
||||
REJECTED = 'rejected',
|
||||
FULLFILLED = 'fulfilled',
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
export enum CommonErrorCodes {
|
||||
DUPLICATE_ENTITY = '23505',
|
||||
}
|
||||
@@ -0,0 +1,99 @@
|
||||
export enum CommonHours {
|
||||
ONE = '01:00',
|
||||
ONE_THIRTY = '01:30',
|
||||
TWO = '02:00',
|
||||
TWO_THIRTY = '02:30',
|
||||
THREE = '03:00',
|
||||
THREE_THIRTY = '03:30',
|
||||
FOUR = '04:00',
|
||||
FOUR_THIRTY = '04:30',
|
||||
FIVE = '05:00',
|
||||
FIVE_THIRTY = '05:30',
|
||||
SIX = '06:00',
|
||||
SIX_THIRTY = '06:30',
|
||||
SEVEN = '07:00',
|
||||
SEVEN_THIRTY = '07:30',
|
||||
EIGHT = '08:00',
|
||||
EIGHT_THIRTY = '08:30',
|
||||
NINE = '09:00',
|
||||
NINE_THIRTY = '09:30',
|
||||
TEN = '10:00',
|
||||
TEN_THIRTY = '10:30',
|
||||
ELEVEN = '11:00',
|
||||
ELEVEN_THIRTY = '11:30',
|
||||
TWELVE = '12:00',
|
||||
TWELVE_THIRTY = '12:30',
|
||||
THIRTEEN = '13:00',
|
||||
THIRTEEN_THIRTY = '13:30',
|
||||
FOURTEEN = '14:00',
|
||||
FOURTEEN_THIRTY = '14:30',
|
||||
FIFTEEN = '15:00',
|
||||
FIFTEEN_THIRTY = '15:30',
|
||||
SIXTEEN = '16:00',
|
||||
SIXTEEN_THIRTY = '16:30',
|
||||
SEVENTEEN = '17:00',
|
||||
SEVENTEEN_THIRTY = '17:30',
|
||||
EIGHTEEN = '18:00',
|
||||
EIGHTEEN_THIRTY = '18:30',
|
||||
NINETEEN = '19:00',
|
||||
NINETEEN_THIRTY = '19:30',
|
||||
TWENTY = '20:00',
|
||||
TWENTY_THIRTY = '20:30',
|
||||
TWENTY_ONE = '21:00',
|
||||
TWENTY_ONE_THIRTY = '21:30',
|
||||
TWENTY_TWO = '22:00',
|
||||
TWENTY_TWO_THIRTY = '22:30',
|
||||
TWENTY_THREE = '23:00',
|
||||
TWENTY_THREE_THIRTY = '23:30',
|
||||
TWENTY_FOUR = '24:00',
|
||||
}
|
||||
|
||||
export enum CommonHourMinutes {
|
||||
ONE = 60,
|
||||
ONE_THIRTY = 90,
|
||||
TWO = 120,
|
||||
TWO_THIRTY = 150,
|
||||
THREE = 180,
|
||||
THREE_THIRTY = 210,
|
||||
FOUR = 240,
|
||||
FOUR_THIRTY = 270,
|
||||
FIVE = 300,
|
||||
FIVE_THIRTY = 330,
|
||||
SIX = 360,
|
||||
SIX_THIRTY = 390,
|
||||
SEVEN = 420,
|
||||
SEVEN_THIRTY = 450,
|
||||
EIGHT = 480,
|
||||
EIGHT_THIRTY = 510,
|
||||
NINE = 540,
|
||||
NINE_THIRTY = 570,
|
||||
TEN = 600,
|
||||
TEN_THIRTY = 630,
|
||||
ELEVEN = 660,
|
||||
ELEVEN_THIRTY = 690,
|
||||
TWELVE = 720,
|
||||
TWELVE_THIRTY = 750,
|
||||
THIRTEEN = 780,
|
||||
THIRTEEN_THIRTY = 810,
|
||||
FOURTEEN = 840,
|
||||
FOURTEEN_THIRTY = 870,
|
||||
FIFTEEN = 900,
|
||||
FIFTEEN_THIRTY = 930,
|
||||
SIXTEEN = 960,
|
||||
SIXTEEN_THIRTY = 990,
|
||||
SEVENTEEN = 1020,
|
||||
SEVENTEEN_THIRTY = 1050,
|
||||
EIGHTEEN = 1080,
|
||||
EIGHTEEN_THIRTY = 1110,
|
||||
NINETEEN = 1140,
|
||||
NINETEEN_THIRTY = 1170,
|
||||
TWENTY = 1200,
|
||||
TWENTY_THIRTY = 1230,
|
||||
TWENTY_ONE = 1260,
|
||||
TWENTY_ONE_THIRTY = 1290,
|
||||
TWENTY_TWO = 1320,
|
||||
TWENTY_TWO_THIRTY = 1350,
|
||||
TWENTY_THREE = 1380,
|
||||
TWENTY_THREE_THIRTY = 1410,
|
||||
TWENTY_FOUR = 1440,
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
export enum PasswordType {
|
||||
SINGLE = 'single',
|
||||
MULTIPLE = 'multiple',
|
||||
}
|
||||
@@ -1,9 +1,11 @@
|
||||
import { DaysEnum } from './days.enum';
|
||||
|
||||
export enum WorkingDays {
|
||||
Sun = 'Sun',
|
||||
Mon = 'Mon',
|
||||
Tue = 'Tue',
|
||||
Wed = 'Wed',
|
||||
Thu = 'Thu',
|
||||
Fri = 'Fri',
|
||||
Sat = 'Sat',
|
||||
Sun = DaysEnum.SUN,
|
||||
Mon = DaysEnum.MON,
|
||||
Tue = DaysEnum.TUE,
|
||||
Wed = DaysEnum.WED,
|
||||
Thu = DaysEnum.THU,
|
||||
Fri = DaysEnum.FRI,
|
||||
Sat = DaysEnum.SAT,
|
||||
}
|
||||
|
||||
@@ -2,10 +2,11 @@ import { Controller, Post, Param } from '@nestjs/common';
|
||||
import { ApiBearerAuth, ApiTags } from '@nestjs/swagger';
|
||||
import { AddDeviceStatusDto } from '../dtos/add.devices-status.dto';
|
||||
import { DeviceStatusFirebaseService } from '../services/devices-status.service';
|
||||
import { EnableDisableStatusEnum } from '@app/common/constants/days.enum';
|
||||
|
||||
@ApiTags('Device Status Firebase Module')
|
||||
@Controller({
|
||||
version: '1',
|
||||
version: EnableDisableStatusEnum.ENABLED,
|
||||
path: 'device-status-firebase',
|
||||
})
|
||||
export class DeviceStatusFirebaseController {
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
import { EnableDisableStatusEnum } from '../constants/days.enum';
|
||||
|
||||
export function convertTimestampToDubaiTime(timestamp) {
|
||||
// Convert timestamp to milliseconds
|
||||
const date = new Date(timestamp * 1000);
|
||||
@@ -8,12 +10,24 @@ export function convertTimestampToDubaiTime(timestamp) {
|
||||
|
||||
// Format the date as YYYYMMDD
|
||||
const year = dubaiTime.getUTCFullYear();
|
||||
const month = String(dubaiTime.getUTCMonth() + 1).padStart(2, '0'); // Months are zero-based
|
||||
const day = String(dubaiTime.getUTCDate()).padStart(2, '0');
|
||||
const month = String(dubaiTime.getUTCMonth() + 1).padStart(
|
||||
2,
|
||||
EnableDisableStatusEnum.DISABLED,
|
||||
); // Months are zero-based
|
||||
const day = String(dubaiTime.getUTCDate()).padStart(
|
||||
2,
|
||||
EnableDisableStatusEnum.DISABLED,
|
||||
);
|
||||
|
||||
// Format the time as HH:MM (24-hour format)
|
||||
const hours = String(dubaiTime.getUTCHours()).padStart(2, '0');
|
||||
const minutes = String(dubaiTime.getUTCMinutes()).padStart(2, '0');
|
||||
const hours = String(dubaiTime.getUTCHours()).padStart(
|
||||
2,
|
||||
EnableDisableStatusEnum.DISABLED,
|
||||
);
|
||||
const minutes = String(dubaiTime.getUTCMinutes()).padStart(
|
||||
2,
|
||||
EnableDisableStatusEnum.DISABLED,
|
||||
);
|
||||
|
||||
// Return formatted date and time
|
||||
return {
|
||||
|
||||
@@ -1,24 +1,42 @@
|
||||
export function getScheduleStatus(daysEnabled: string[]): string {
|
||||
const daysMap: string[] = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'];
|
||||
import { DaysEnum, EnableDisableStatusEnum } from '../constants/days.enum';
|
||||
|
||||
const schedule: string[] = Array(7).fill('0');
|
||||
export function getScheduleStatus(daysEnabled: string[]): string {
|
||||
const daysMap: string[] = [
|
||||
DaysEnum.SUN,
|
||||
DaysEnum.MON,
|
||||
DaysEnum.TUE,
|
||||
DaysEnum.WED,
|
||||
DaysEnum.THU,
|
||||
DaysEnum.FRI,
|
||||
DaysEnum.SAT,
|
||||
];
|
||||
|
||||
const schedule: string[] = Array(7).fill(EnableDisableStatusEnum.DISABLED);
|
||||
|
||||
daysEnabled.forEach((day) => {
|
||||
const index: number = daysMap.indexOf(day);
|
||||
if (index !== -1) {
|
||||
schedule[index] = '1';
|
||||
schedule[index] = EnableDisableStatusEnum.ENABLED;
|
||||
}
|
||||
});
|
||||
|
||||
return schedule.join('');
|
||||
}
|
||||
export function getEnabledDays(schedule: string): string[] {
|
||||
const daysMap: string[] = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'];
|
||||
const daysMap: string[] = [
|
||||
DaysEnum.SUN,
|
||||
DaysEnum.MON,
|
||||
DaysEnum.TUE,
|
||||
DaysEnum.WED,
|
||||
DaysEnum.THU,
|
||||
DaysEnum.FRI,
|
||||
DaysEnum.SAT,
|
||||
];
|
||||
const enabledDays: string[] = [];
|
||||
|
||||
// Iterate through the schedule string
|
||||
for (let i = 0; i < schedule.length; i++) {
|
||||
if (schedule[i] === '1') {
|
||||
if (schedule[i] === EnableDisableStatusEnum.ENABLED) {
|
||||
enabledDays.push(daysMap[i]);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user