penisularhr / src / modules / incentive / dtos / create-incentive-settings.dto.ts
create-incentive-settings.dto.ts
Raw
import { IncentiveName, IncentiveType } from '../../../constants';
import {
  BooleanField,
  EnumField,
  NumberField,
  StringFieldOptional,
} from '../../../decorators';

export class CreateIncentiveSettingDto {
  @EnumField(() => IncentiveName)
  name!: IncentiveName;

  @BooleanField()
  isActive!: boolean;

  @StringFieldOptional({ nullable: true })
  unit?: string;

  @NumberField()
  amount!: number;

  @NumberField()
  threshold!: number;

  @EnumField(() => IncentiveType)
  type!: IncentiveType;
}