Merge pull request #54 from SyncrowIOT/fix-issue-door-lock

Fix issue door lock
This commit is contained in:
faris Aljohari
2024-06-29 17:22:19 +03:00
committed by GitHub
2 changed files with 19 additions and 11 deletions

View File

@ -6,6 +6,7 @@ import {
ValidateNested,
IsEnum,
Length,
IsOptional,
} from 'class-validator';
import { Type } from 'class-transformer';
import { WorkingDays } from '@app/common/constants/working-days';
@ -79,6 +80,7 @@ export class AddDoorLockOnlineDto {
})
@IsArray()
@ValidateNested({ each: true })
@IsOptional()
@Type(() => ScheduleDto)
public scheduleList: ScheduleDto[];
}

View File

@ -168,18 +168,24 @@ export class DoorLockService {
if (passwords.result.length > 0) {
const passwordFiltered = passwords.result
.filter((item) => item.schedule_list && item.schedule_list.length > 0)
.filter((item) => item.type === 1)
.map((password: any) => {
password.schedule_list = password.schedule_list.map((schedule) => {
if (password.schedule_list?.length > 0) {
password.schedule_list = password.schedule_list.map(
(schedule) => {
schedule.working_day = this.getDaysFromWorkingDayValue(
schedule.working_day,
);
schedule.effective_time = this.minutesToTime(
schedule.effective_time,
);
schedule.invalid_time = this.minutesToTime(schedule.invalid_time);
schedule.invalid_time = this.minutesToTime(
schedule.invalid_time,
);
return schedule;
});
},
);
}
return password;
});
@ -343,7 +349,7 @@ export class DoorLockService {
addDeviceObj,
passwordData.deviceTuyaUuid,
type,
isOnline,
addDeviceObj.scheduleList ? isOnline : false,
);
if (!createPass.success) {