Public/Get-AeriesStaffAssignment.ps1
function Get-AeriesStaffAssignment { <# .SYNOPSIS Get Staff Assignments from Aeries .DESCRIPTION The Get-AeriesStaffAssignment cmdlet is used to retrieve one or more Staff Assignment something from Aeries .EXAMPLE Get-AeriesStaffAssignment -StaffID 1 This will return all Staff Assignments for Staff ID 1 from Aeries .EXAMPLE Get-AeriesStaffAssignment -StaffID 1 -AssignmentType "classified" This will return all Staff Assignments for Staff ID 1 that match Assignment Type of "classified" from Aeries .EXAMPLE Get-AeriesStaffAssignment -StaffID 1 -AssignmentType "classified" -Sequence 1 This will return all Staff Assignments for Staff ID 1 that match Assignment Type of "classified" and Sequence Number 1 from Aeries .EXAMPLE Get-AeriesStaffAssignment -StaffID 1 -AssignmentType "classified" -Date (Get-Date "2021-04-13") This will return all Staff Assignments for Staff ID 1 that match Assignment Type of "classified" and were effective on 04/13/2021 from Aeries #> [CmdletBinding()] param ( [ValidateRange(1, [Int]::MaxValue)] [Parameter(Mandatory=$true)] [int] $StaffID, [ValidateSet("classified", "certificated")] [Parameter(Mandatory=$false)] $AssignmentType, [ValidateRange(1, [Int16]::MaxValue)] [Parameter(Mandatory=$false)] [Int16] $Sequence, [Parameter(Mandatory=$false)] [datetime] $Date ) Begin { Write-Verbose -Message "Begin running $($MyInvocation.MyCommand)" $Method = "Get" $SuccessStatusCode = 200 $Endpoint = "v5/staff/$StaffID/assignments" if ($Date -ne $null) { $Endpoint += "/date/" + $Date.ToString("yyyy/MM/dd") + "/$AssignmentType" } elseif (![string]::IsNullOrWhiteSpace($AssignmentType) -and ($Sequence -gt 0)) { $Endpoint += "/$AssignmentType/$Sequence" } else { $Endpoint += "/$AssignmentType" } } Process { $Result = (Invoke-AeriesApiCall -Method $Method -Endpoint $Endpoint -SuccessStatusCode $SuccessStatusCode) } End { Write-Verbose -Message "Finish running $($MyInvocation.MyCommand)" return $Result } } |