penisularhr / src / modules / report / dtos / get-report-audit-log.dto.ts
get-report-audit-log.dto.ts
Raw
import { OperateType, Order } from '../../../constants';
import {
  EnumFieldOptional,
  NumberFieldOptional,
  StringFieldOptional,
} from '../../../decorators/field.decorators';

export class GetAuditLogDto {
  @StringFieldOptional()
  userName?: string;

  @StringFieldOptional()
  tableName?: string;

  @EnumFieldOptional(() => OperateType)
  operateType?: OperateType;

  @NumberFieldOptional()
  year?: number;

  @NumberFieldOptional({ min: 1, max: 12 })
  monthFrom?: number;

  @NumberFieldOptional({ min: 1, max: 12 })
  monthTo?: number;

  @EnumFieldOptional(() => Order)
  order?: Order = Order.ASC;
}