feature: bulk generate documents for device batches, models and profiles

This commit is contained in:
Gary Sharp
2023-05-04 15:30:04 +10:00
parent 473b02f718
commit 0a4a2816a0
29 changed files with 1285 additions and 530 deletions
@@ -1,10 +1,11 @@
using Disco.Models.UI.Config.DeviceBatch;
using Disco.Services.Devices.ManagedGroups;
using Disco.Web.Areas.Config.Models.Shared;
using System.Collections.Generic;
namespace Disco.Web.Areas.Config.Models.DeviceBatch
{
public class ShowModel : ConfigDeviceBatchShowModel
public class ShowModel : DeviceGroupDocumentTemplateBulkGenerateModel, ConfigDeviceBatchShowModel
{
public Disco.Models.Repository.DeviceBatch DeviceBatch { get; set; }
@@ -19,5 +20,7 @@ namespace Disco.Web.Areas.Config.Models.DeviceBatch
public int DeviceCount { get; set; }
public int DeviceDecommissionedCount { get; set; }
public bool CanDelete { get; set; }
public override int DeviceGroupId => DeviceBatch.Id;
}
}
@@ -1,13 +1,11 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Disco.Models.UI.Config.DeviceModel;
using Disco.Services.Plugins;
using Disco.Models.UI.Config.DeviceModel;
using Disco.Web.Areas.Config.Models.Shared;
using System.Collections.Generic;
namespace Disco.Web.Areas.Config.Models.DeviceModel
{
public class ShowModel : ConfigDeviceModelShowModel
public class ShowModel : DeviceGroupDocumentTemplateBulkGenerateModel, ConfigDeviceModelShowModel
{
public Disco.Models.Repository.DeviceModel DeviceModel { get; set; }
@@ -20,5 +18,7 @@ namespace Disco.Web.Areas.Config.Models.DeviceModel
public int DeviceDecommissionedCount { get; set; }
public bool CanDelete { get; set; }
public override int DeviceGroupId => DeviceModel.Id;
}
}
@@ -2,12 +2,13 @@
using Disco.Services.Devices.ManagedGroups;
using Disco.Services.Interop.ActiveDirectory;
using Disco.Services.Plugins;
using Disco.Web.Areas.Config.Models.Shared;
using System.Collections.Generic;
using System.Web.Mvc;
namespace Disco.Web.Areas.Config.Models.DeviceProfile
{
public class ShowModel : ConfigDeviceProfileShowModel
public class ShowModel : DeviceGroupDocumentTemplateBulkGenerateModel, ConfigDeviceProfileShowModel
{
public Disco.Models.Repository.DeviceProfile DeviceProfile { get; set; }
public List<SelectListItem> DeviceProfileDistributionTypes { get; set; }
@@ -42,5 +43,7 @@ namespace Disco.Web.Areas.Config.Models.DeviceProfile
public int DeviceDecommissionedCount { get; set; }
public bool CanDelete { get; set; }
public override int DeviceGroupId => DeviceProfile.Id;
}
}
@@ -0,0 +1,12 @@
using Disco.Models.UI.Config.Shared;
using System.Collections.Generic;
namespace Disco.Web.Areas.Config.Models.Shared
{
public abstract class DeviceGroupDocumentTemplateBulkGenerateModel : ConfigSharedDeviceGroupDocumentTemplateBulkGenerate
{
public List<Disco.Models.Repository.DocumentTemplate> BulkGenerateDocumentTemplates { get; set; }
public abstract int DeviceGroupId { get; }
}
}