Feature: Document Template Packages

Document Templates can be grouped into a package and generated on-demand
in the same was as individual document templates. Packages can be
generated in bulk.
This commit is contained in:
Gary Sharp
2016-11-14 01:21:23 +11:00
parent ef8df08e29
commit aca037ecf8
75 changed files with 8008 additions and 2078 deletions
@@ -0,0 +1,21 @@
using Disco.Models.Services.Documents;
using Disco.Models.UI.Config.DocumentTemplate;
using System.Collections.Generic;
namespace Disco.Web.Areas.Config.Models.DocumentTemplate
{
public class CreatePackageModel : ConfigDocumentTemplateCreatePackageModel
{
public DocumentTemplatePackage Package { get; set; }
public List<string> Scopes
{
get
{
return Disco.Models.Repository.DocumentTemplate.DocumentTemplateScopes.ToList();
}
}
}
}
@@ -1,4 +1,5 @@
using Disco.Models.UI.Config.DocumentTemplate;
using Disco.Models.Services.Documents;
using Disco.Models.UI.Config.DocumentTemplate;
using System.Collections.Generic;
namespace Disco.Web.Areas.Config.Models.DocumentTemplate
@@ -6,5 +7,7 @@ namespace Disco.Web.Areas.Config.Models.DocumentTemplate
public class IndexModel : ConfigDocumentTemplateIndexModel
{
public Dictionary<Disco.Models.Repository.DocumentTemplate, int> DocumentTemplates { get; set; }
public List<DocumentTemplatePackage> Packages { get; set; }
}
}
@@ -14,7 +14,9 @@ namespace Disco.Web.Areas.Config.Models.DocumentTemplate
public int StoredInstanceCount { get; set; }
public List<bool> TemplatePagesHaveAttachmentId { get; set; }
public List<Expression> TemplateExpressions { get; set; }
public int TemplatePageCount { get { return TemplatePagesHaveAttachmentId?.Count() ?? 0; } }
public List<JobType> JobTypes { get; set; }
@@ -0,0 +1,24 @@
using Disco.Models.Repository;
using Disco.Models.Services.Documents;
using Disco.Models.UI.Config.DocumentTemplate;
using System.Collections.Generic;
namespace Disco.Web.Areas.Config.Models.DocumentTemplate
{
public class ShowPackageModel : ConfigDocumentTemplateShowPackageModel
{
public DocumentTemplatePackage Package { get; set; }
public List<JobSubType> JobSubTypesSelected { get; set; }
public List<Disco.Models.Repository.DocumentTemplate> DocumentTemplates { get; set; }
public List<Disco.Models.Repository.DocumentTemplate> DocumentTemplatesSelected { get; set; }
public List<JobType> JobTypes { get; set; }
public List<string> Scopes
{
get
{
return Disco.Models.Repository.DocumentTemplate.DocumentTemplateScopes.ToList();
}
}
}
}