Public/PaySchedules/New-AspirePaySchedule.ps1
|
<#
.SYNOPSIS Creates a new pay schedule in the Aspire API. .DESCRIPTION Uses Invoke-AspireRequest to perform a POST request to the /PaySchedules endpoint. .PARAMETER PayScheduleName The name of the pay schedule (required). .PARAMETER DailyHoursBeforeOT Daily hours before overtime (required, decimal). .PARAMETER WeeklyHoursBeforeOT Weekly hours before overtime (required, decimal). .PARAMETER Active Active status (required, boolean). .PARAMETER DefaultOTPayCodeID Default OT pay code ID (required). .PARAMETER DefaultPayCodeID Default pay code ID (required). .OUTPUTS The response from the API containing the pay schedule details. .EXAMPLE New-AspirePaySchedule -PayScheduleName "Standard Schedule" -DailyHoursBeforeOT 8.0 -WeeklyHoursBeforeOT 40.0 -Active $true -DefaultOTPayCodeID 1 -DefaultPayCodeID 2 #> function New-AspirePaySchedule { [CmdletBinding()] param( [Parameter(Mandatory = $true)] [string]$PayScheduleName, [Parameter(Mandatory = $true)] [decimal]$DailyHoursBeforeOT, [Parameter(Mandatory = $true)] [decimal]$WeeklyHoursBeforeOT, [Parameter(Mandatory = $true)] [bool]$Active, [Parameter(Mandatory = $true)] [int]$DefaultOTPayCodeID, [Parameter(Mandatory = $true)] [int]$DefaultPayCodeID ) $body = @{ PayScheduleName = $PayScheduleName DailyHoursBeforeOT = $DailyHoursBeforeOT WeeklyHoursBeforeOT = $WeeklyHoursBeforeOT Active = $Active DefaultOTPayCodeID = $DefaultOTPayCodeID DefaultPayCodeID = $DefaultPayCodeID } return Invoke-AspireRequest -Method POST -Path "/PaySchedules" -Body $body -ApiVersion $null } |