DigitalFormsHelper.cs 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. using Comal.Classes;
  2. using InABox.Core;
  3. using System;
  4. namespace PRS.Mobile
  5. {
  6. public static class DigitalFormsHelper
  7. {
  8. public static IDigitalFormHostModel LoadModel(DigitalFormLayout layout, Type type, Kanban addToTaskKanban, Guid JobID = new Guid(), ExistingFormShell form = null, bool addingToTask = false)
  9. {
  10. if (type == typeof(JobForm))
  11. {
  12. var model = new DigitalFormHostModel<Job, JobLink, JobForm>();
  13. var job = new Job();
  14. var jobForm = new JobForm();
  15. jobForm.Form.ID = layout.Form.ID;
  16. if (form == null)
  17. {
  18. job.ID = JobID;
  19. }
  20. else
  21. {
  22. jobForm.ID = form.ID;
  23. job.ID = form.ParentID;
  24. }
  25. model.LoadItems(job, jobForm, layout);
  26. return model;
  27. }
  28. else
  29. {
  30. var model = new DigitalFormHostModel<Kanban, KanbanLink, KanbanForm>();
  31. var kanban = new Kanban();
  32. var kanbanForm = new KanbanForm();
  33. kanbanForm.Form.ID = layout.Form.ID;
  34. if (form != null)
  35. {
  36. kanbanForm.ID = form.ID;
  37. kanban.ID = form.ParentID;
  38. }
  39. if (addingToTask)
  40. {
  41. kanbanForm.Parent.ID = addToTaskKanban.ID;
  42. kanban.ID = addToTaskKanban.ID;
  43. }
  44. model.LoadItems(kanban, kanbanForm, layout);
  45. return model;
  46. }
  47. }
  48. }
  49. }