FormUtils.cs 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. using Comal.Classes;
  2. using InABox.Core;
  3. using Org.BouncyCastle.Asn1.X509;
  4. using System;
  5. using System.Collections.Generic;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. namespace PRSDesktop
  10. {
  11. public static class FormUtils
  12. {
  13. public static void Register()
  14. {
  15. DFUtils.AddFormUtils<AssignmentForm, Assignment, AssignmentLink>(CanEditAssignmentForm);
  16. DFUtils.AddFormUtils<EmployeeForm, Employee, EmployeeLink>(CanEditEmployeeForm);
  17. DFUtils.AddFormUtils<JobForm, Job, JobLink>(CanEditJobForm);
  18. DFUtils.AddFormUtils<JobITPForm, JobITP, JobITPLink>(CanEditJobITPForm);
  19. DFUtils.AddFormUtils<KanbanForm, Kanban, KanbanLink>(CanEditKanbanForm);
  20. DFUtils.AddFormUtils<LeaveRequestForm, LeaveRequest, LeaveRequestLink>(CanEditLeaveRequestForm);
  21. DFUtils.AddFormUtils<PurchaseOrderItemForm, PurchaseOrderItem, PurchaseOrderItemLink>(CanEditPurchaseOrderItemForm);
  22. DFUtils.AddFormUtils<TimeSheetForm, TimeSheet, TimeSheetLink>(CanEditTimeSheetForm);
  23. }
  24. public static bool CanEditAssignmentForm(AssignmentForm form, Assignment assignment)
  25. {
  26. return assignment.EmployeeLink.ID == App.EmployeeID;
  27. }
  28. public static bool CanEditEmployeeForm(EmployeeForm form, Employee employee)
  29. {
  30. return employee.ID == App.EmployeeID;
  31. }
  32. public static bool CanEditJobForm(JobForm form, Job job)
  33. {
  34. return false;
  35. }
  36. public static bool CanEditJobITPForm(JobITPForm form, JobITP jobITP)
  37. {
  38. return false;
  39. }
  40. public static bool CanEditKanbanForm(KanbanForm form, Kanban kanban)
  41. {
  42. return kanban.EmployeeLink.ID == App.EmployeeID;
  43. }
  44. public static bool CanEditLeaveRequestForm(LeaveRequestForm form, LeaveRequest leaveRequest)
  45. {
  46. return leaveRequest.EmployeeLink.ID == App.EmployeeID;
  47. }
  48. public static bool CanEditPurchaseOrderItemForm(PurchaseOrderItemForm form, PurchaseOrderItem purchaseOrderItem)
  49. {
  50. return false;
  51. }
  52. public static bool CanEditTimeSheetForm(TimeSheetForm form, TimeSheet timeSheet)
  53. {
  54. return timeSheet.EmployeeLink.ID == App.EmployeeID;
  55. }
  56. }
  57. }