mirror of
https://github.com/LD-Reborn/Berufsschule_HAM.git
synced 2025-12-20 06:51:55 +00:00
Add null check
This commit is contained in:
@@ -34,38 +34,73 @@ public class AssetsController : Controller
|
||||
|
||||
try
|
||||
{
|
||||
var ownerDn = $"uid={assetModel.Owner},ou=people,dc=example,dc=com";
|
||||
|
||||
LdapAttributeSet attributeSet =
|
||||
[
|
||||
new LdapAttribute("objectClass", new[] {"top", "device", "extensibleObject"}),
|
||||
new LdapAttribute("cn", assetModel.Cn),
|
||||
new LdapAttribute("serialNumber", assetModel.SerialNumber),
|
||||
new LdapAttribute("l", assetModel.Location),
|
||||
new LdapAttribute("owner", ownerDn),
|
||||
new LdapAttribute("name", assetModel.Name),
|
||||
new LdapAttribute(
|
||||
"description",
|
||||
JsonSerializer.Serialize(new AssetDescription()
|
||||
{
|
||||
Type = assetModel.Description!.Type,
|
||||
Purchase = new AssetPurchase
|
||||
{
|
||||
PurchasedAt = assetModel.Description.Purchase!.PurchasedAt,
|
||||
PurchaseDate = assetModel.Description.Purchase.PurchaseDate,
|
||||
PurchaseValue = assetModel.Description.Purchase.PurchaseValue
|
||||
}
|
||||
})
|
||||
)
|
||||
];
|
||||
|
||||
if (assetModel.Cn != null)
|
||||
{
|
||||
attributeSet.Add(new LdapAttribute("cn", assetModel.Cn));
|
||||
}
|
||||
if (assetModel.SerialNumber != null)
|
||||
{
|
||||
attributeSet.Add(new LdapAttribute("serialNumber", assetModel.SerialNumber));
|
||||
}
|
||||
if (assetModel.Location != null)
|
||||
{
|
||||
attributeSet.Add(new LdapAttribute("l", assetModel.Location));
|
||||
}
|
||||
if (assetModel.Owner != null)
|
||||
{
|
||||
var ownerDn = $"uid={assetModel.Owner},ou=people,dc=example,dc=com";
|
||||
attributeSet.Add(new LdapAttribute("owner", ownerDn));
|
||||
}
|
||||
if (assetModel.Name != null)
|
||||
{
|
||||
attributeSet.Add(new LdapAttribute("name", assetModel.Name));
|
||||
}
|
||||
if (assetModel.Description != null)
|
||||
{
|
||||
var assetDescription = new AssetDescription();
|
||||
|
||||
if (assetModel.Description.Type != null)
|
||||
{
|
||||
assetDescription.Type = assetModel.Description.Type;
|
||||
}
|
||||
if (assetModel.Description.Purchase != null)
|
||||
{
|
||||
var purchase = new AssetPurchase();
|
||||
if (assetModel.Description.Purchase.PurchasedAt != null)
|
||||
{
|
||||
purchase.PurchasedAt = assetModel.Description.Purchase.PurchasedAt;
|
||||
}
|
||||
if (assetModel.Description.Purchase.PurchaseDate != null)
|
||||
{
|
||||
purchase.PurchaseDate = assetModel.Description.Purchase.PurchaseDate;
|
||||
}
|
||||
if (assetModel.Description.Purchase.PurchasedBy != null)
|
||||
{
|
||||
purchase.PurchasedBy = assetModel.Description.Purchase.PurchasedBy;
|
||||
}
|
||||
if (assetModel.Description.Purchase.PurchaseValue != null)
|
||||
{
|
||||
purchase.PurchaseValue = assetModel.Description.Purchase.PurchaseValue;
|
||||
}
|
||||
|
||||
assetDescription.Purchase = purchase;
|
||||
}
|
||||
|
||||
attributeSet.Add(new LdapAttribute("description", JsonSerializer.Serialize(assetDescription)));
|
||||
}
|
||||
|
||||
await _ldap.CreateAsset(attributeSet);
|
||||
|
||||
return true;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
_logger.LogError("Unable to create an asset because the Exception: " + e.Message);
|
||||
_logger.LogError($"Unable to create an asset because of the exception: {e.Message}", e);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user