feature: device model/profile decommissioning

This commit is contained in:
Gary Sharp
2025-07-05 13:55:44 +10:00
parent 583552ffdd
commit 6e99b4503b
17 changed files with 714 additions and 23 deletions
@@ -70,7 +70,18 @@ namespace Disco.Services
// Delete Profile
Database.DeviceProfiles.Remove(dp);
}
public static bool CanDecommission(this DeviceProfile dp, DiscoDataContext database)
{
if (!UserService.CurrentAuthorization.Has(Claims.Device.Actions.Import))
return false;
if (!database.Devices.Any(d => d.DeviceProfileId == dp.Id && d.DecommissionedDate == null))
return false;
return true;
}
public static IEnumerable<PluginFeatureManifest> GetCertificateProviders(this DeviceProfile dp)
{
if (!string.IsNullOrEmpty(dp.CertificateProviders))