import { ApiProperty } from "@nestjs/swagger"
import { IsNotEmpty, IsOptional, IsString } from "class-validator"
import { validationMessage } from "../../../utils/helpers"
import { messageKey } from "../../../constants/message-keys"

export class UpdateSalaryHistoryDto {
  @ApiProperty({
    description: "Gross Salary",
    example: 50000.0,
  })
  @IsNotEmpty({
    message: validationMessage(messageKey.field_required, {
      ":field": "gross_salary",
    }),
  })
  gross_salary: number
  @ApiProperty({
    description: "Notes",
    example: "Notes",
  })
  @IsOptional()
  @IsString({
    message: validationMessage(messageKey.field_type_validation_error, {
      ":field": "notes",
      ":type": "string",
    }),
  })
  notes?: string
  @ApiProperty({
    description: "From Date",
    example: "2024-01-15",
  })
  @IsNotEmpty({
    message: validationMessage(messageKey.field_required, {
      ":field": "from_date",
    }),
  })
  from_date: Date
}
