Merge branch 'PetriAsi-new-asset-like-api' into develop

This commit is contained in:
Petri Asikainen 2021-05-16 08:27:29 +03:00
commit 3804a6df17
2 changed files with 98 additions and 67 deletions

View file

@ -5,17 +5,42 @@
.DESCRIPTION .DESCRIPTION
Long description Long description
.PARAMETER Tag
Asset Tag for the Asset
.PARAMETER Name .PARAMETER status_id
Name of the Asset Required Status ID of the asset, this can be got using Get-Status
.PARAMETER Status_id .PARAMETER model_id
Status ID of the asset, this can be got using Get-Status Required Model ID of the asset, this can be got using Get-Model
.PARAMETER Model_id .PARAMETER name
Model ID of the asset, this can be got using Get-Model Optional Name of the Asset
.PARAMETER asset_tag
Asset Tag for the Asset, not required when snipe asset_tag autogeneration is on.
.PARAMETER serial
Optional Serial number of the Asset
.PARAMETER company_id
Optional Company id
.PARAMETER order_number
Optional Order number
.PARAMETER notes
Optional Notes
.PARAMETER warranty_monhts
Optional Warranty lenght of the Asset in months
.PARAMETER purchase_cost
Optional Purchase cost of the Asset
.PARAMETER purchase_date
Optional Purchase cost of the Asset
.PARAMETER rtd_location_id
Optional Default location id for the asset
.PARAMETER url .PARAMETER url
URL of Snipeit system, can be set using Set-Info command URL of Snipeit system, can be set using Set-Info command
@ -41,16 +66,45 @@ function New-Asset()
)] )]
Param( Param(
[string]$tag,
[parameter(mandatory = $true)]
[int]$status_id,
[parameter(mandatory = $true)] [parameter(mandatory = $true)]
[string]$Name, [int]$model_id,
[parameter(mandatory = $true)] [parameter(mandatory = $false)]
[int]$Status_id, [string]$name,
[parameter(mandatory = $true)] [parameter(mandatory = $false)]
[int]$Model_id, [string]$asset_tag,
[parameter(mandatory = $false)]
[string]$serial,
[parameter(mandatory = $false)]
[int]$company_id,
[parameter(mandatory = $false)]
[string]$order_number,
[parameter(mandatory = $false)]
[string]$notes,
[parameter(mandatory = $false)]
[int]$warranty_months,
[parameter(mandatory = $false)]
[string]$purchase_cost,
[parameter(mandatory = $false)]
[string]$purchase_date,
[parameter(mandatory = $false)]
[int]$supplier_id,
[parameter(mandatory = $false)]
[int]$rtd_location_id,
[parameter(mandatory = $true)] [parameter(mandatory = $true)]
[string]$url, [string]$url,
@ -61,16 +115,8 @@ function New-Asset()
[hashtable] $customfields [hashtable] $customfields
) )
$Values = @{ $Values = . Get-ParameterValue $MyInvocation.MyCommand.Parameters
"name" = $Name
"status_id" = $status_id
"model_id" = $model_id
}
if ($PSBoundParameters.ContainsKey('tag'))
{
$Values += @{"asset_tag" = $tag}
}
if ($customfields) if ($customfields)
{ {

View file

@ -5,16 +5,22 @@
.DESCRIPTION .DESCRIPTION
Long description Long description
.PARAMETER firstName .PARAMETER first_name
Parameter description Parameter description
.PARAMETER lastName .PARAMETER last_name
Parameter description Parameter description
.PARAMETER userName .PARAMETER username
Parameter description Parameter description
.PARAMETER jobTitle .PARAMETER active
Parameter description
.PARAMETER notes
Parameter description
.PARAMETER jobtitle
Parameter description Parameter description
.PARAMETER email .PARAMETER email
@ -38,8 +44,8 @@
.PARAMETER employee_num .PARAMETER employee_num
Parameter description Parameter description
.PARAMETER ldap_user .PARAMETER ldap_import
Parameter description Mark user as import from ldap
.PARAMETER url .PARAMETER url
Parameter description Parameter description
@ -62,17 +68,21 @@ function New-User() {
Param( Param(
[parameter(mandatory = $true)] [parameter(mandatory = $true)]
[string]$firstName, [string]$first_name,
[parameter(mandatory = $true)] [parameter(mandatory = $true)]
[string]$lastName, [string]$last_name,
[parameter(mandatory = $true)] [parameter(mandatory = $true)]
[string]$userName, [string]$username,
[string]$password, [string]$password,
[string]$jobTitle, [bool]$activated = $false,
[string]$notes,
[string]$jobtitle,
[string]$email, [string]$email,
@ -88,47 +98,22 @@ function New-User() {
[string]$employee_num, [string]$employee_num,
[bool]$ldap_user = $false, [bool]$ldap_import = $false,
[parameter(mandatory = $true)] [parameter(mandatory = $true)]
[string]$url, [string]$url,
[parameter(mandatory = $true)] [parameter(mandatory = $true)]
[string]$apiKey [string]$apiKey
) )
$Values = @{ $Values = . Get-ParameterValue $MyInvocation.MyCommand.Parameters
first_name = $firstName
last_name = $lastName if ($password ) {
username = $userName $Values['password_confirmation'] = $password
email = $email
phone = $phone
company_id = $company_id
location_id = $location_id
department_id = $department_id
manager_id = $manager_id
jobtitle = $jobTitle
employee_num = $employee_num
notes = "Imported using SnipeitPS Script"
activated = 1
} }
if ($ldap_user -eq $false) {
$ldap = @{
password = $password
password_confirmation = $password
ldap_import = 0
}
$Values += $ldap
}
else {
$ldap = @{
ldap_import = 1
}
$Values += $ldap
}
$Body = $Values | ConvertTo-Json; $Body = $Values | ConvertTo-Json;
$Parameters = @{ $Parameters = @{