mirror of
https://github.com/SyncrowIOT/backend.git
synced 2025-07-10 07:07:21 +00:00
33 lines
1.2 KiB
TypeScript
33 lines
1.2 KiB
TypeScript
import { ControllerRoute } from '@app/common/constants/controller-route';
|
|
import { EnableDisableStatusEnum } from '@app/common/constants/days.enum';
|
|
import { Controller, Get, Param, Query, UseGuards } from '@nestjs/common';
|
|
import { ApiBearerAuth, ApiOperation, ApiTags } from '@nestjs/swagger';
|
|
import { Permissions } from 'src/decorators/permissions.decorator';
|
|
import { PermissionsGuard } from 'src/guards/permissions.guard';
|
|
import { GetDevicesFilterDto, ProjectParam } from '../dtos';
|
|
import { DeviceService } from '../services/device.service';
|
|
|
|
@ApiTags('Device Module')
|
|
@Controller({
|
|
version: EnableDisableStatusEnum.ENABLED,
|
|
path: ControllerRoute.DEVICE_PROJECT.ROUTE,
|
|
})
|
|
export class DeviceProjectController {
|
|
constructor(private readonly deviceService: DeviceService) {}
|
|
|
|
@ApiBearerAuth()
|
|
@UseGuards(PermissionsGuard)
|
|
@Permissions('DEVICE_VIEW')
|
|
@Get()
|
|
@ApiOperation({
|
|
summary: ControllerRoute.DEVICE.ACTIONS.GET_ALL_DEVICES_SUMMARY,
|
|
description: ControllerRoute.DEVICE.ACTIONS.GET_ALL_DEVICES_DESCRIPTION,
|
|
})
|
|
async getAllDevices(
|
|
@Param() param: ProjectParam,
|
|
@Query() query: GetDevicesFilterDto,
|
|
) {
|
|
return await this.deviceService.getAllDevices(param, query);
|
|
}
|
|
}
|