JobDocumentFolderModel.cs 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. using System;
  2. using Comal.Classes;
  3. using InABox.Core;
  4. using InABox.Mobile;
  5. namespace PRS.Mobile
  6. {
  7. public class JobDocumentFolderModel : CoreRepository<JobDocumentFolderModel, JobDocumentFolderShell, JobDocumentSetFolder>
  8. {
  9. public JobDocumentFolderModel(IModelHost host, Func<Filter<JobDocumentSetFolder>> filter): base(host, filter)
  10. {
  11. }
  12. protected override void Initialize()
  13. {
  14. base.Initialize();
  15. DocumentFolders = new CoreTreeNodes();
  16. }
  17. public CoreTreeNodes DocumentFolders { get; private set; }
  18. protected override void AfterLoad(MultiQuery query)
  19. {
  20. base.AfterLoad(query);
  21. DocumentFolders.Load<JobDocumentSetFolder>(
  22. query.Get<JobDocumentSetFolder>(),
  23. x=>x.ID,
  24. x=>x.Parent.ID,
  25. x=>x.Name
  26. );
  27. var roots = DocumentFolders.GetChilden(Guid.Empty);
  28. foreach (var root in roots)
  29. root.Parent = CoreUtils.FullGuid;
  30. DocumentFolders.Add(CoreUtils.FullGuid, Guid.Empty).Description = "All Folders";
  31. }
  32. }
  33. }