diff --git a/SnipeitPS/Public/Remove-SnipeitDepartment.ps1 b/SnipeitPS/Public/Remove-SnipeitDepartment.ps1 index 7d0ed95..8bf9daa 100644 --- a/SnipeitPS/Public/Remove-SnipeitDepartment.ps1 +++ b/SnipeitPS/Public/Remove-SnipeitDepartment.ps1 @@ -37,7 +37,7 @@ function Remove-SnipeitDepartment () begin { } process { - foreach($depatment_id in $id){ + foreach($department_id in $id){ $Parameters = @{ Uri = "$url/api/v1/departments/$department_id" Method = 'Delete' diff --git a/SnipeitPS/Public/Set-SnipeitDepartment.ps1 b/SnipeitPS/Public/Set-SnipeitDepartment.ps1 new file mode 100644 index 0000000..8a66063 --- /dev/null +++ b/SnipeitPS/Public/Set-SnipeitDepartment.ps1 @@ -0,0 +1,85 @@ +<# + .SYNOPSIS + Updates a department + + .DESCRIPTION + Updates the department on Snipe-It system + + .PARAMETER id + Id number of Department + + .PARAMETER name + Department Name + + .PARAMETER company_id + ID number of company + + .PARAMETER location_id + ID number of location + + .PARAMETER manager_id + ID number of manager + + .PARAMETER url + URL of Snipeit system, can be set using Set-SnipeitInfo command + + .PARAMETER apiKey + Users API Key for Snipeit, can be set using Set-SnipeitInfo command + + .EXAMPLE + Set-SnipeitDepartment -id 4 -manager_id 3 + +#> + +function Set-SnipeitDepartment() { + [CmdletBinding( + SupportsShouldProcess = $true, + ConfirmImpact = "Low" + )] + + Param( + [parameter(mandatory = $true,ValueFromPipelineByPropertyName)] + [int[]]$id, + + [string]$name, + + [int]$company_id, + + [int]$location_id, + + [int]$manager_id, + + [string]$notes, + + [parameter(mandatory = $true)] + [string]$url, + + [parameter(mandatory = $true)] + [string]$apiKey + ) + + begin { + + $Values = . Get-ParameterValue -Parameters $MyInvocation.MyCommand.Parameters -BoundParameters $PSBoundParameters + + $Body = $Values | ConvertTo-Json; + } + + process { + foreach ($department_id in $id) { + $Parameters = @{ + Uri = "$url/api/v1/departments/$department_id" + Method = 'Put' + Body = $Body + Token = $apiKey + } + + If ($PSCmdlet.ShouldProcess("ShouldProcess?")) { + $result = Invoke-SnipeitMethod @Parameters + } + + $result + } + } +} +