IUnitOfWork.cs 1.0 KB

123456789101112131415161718192021222324252627282930313233343536
  1. 
  2. using MTWorkHR.Core.Entities;
  3. using MTWorkHR.Core.IRepositories;
  4. using MTWorkHR.Core.IRepositories.Base;
  5. namespace MTWorkHR.Core.UnitOfWork
  6. {
  7. public interface IUnitOfWork
  8. {
  9. IPermissionRepository Permission { get; }
  10. IProjectRepository Project { get; }
  11. IUserTaskRepository UserTask { get; }
  12. IUserTaskAttachmentRepository UserTaskAttachment { get; }
  13. ITaskStatusRepository UserTaskStatus { get; }
  14. IUserTaskHistoryRepository UserTaskHistory { get; }
  15. ICompanyRepository Company { get; }
  16. ITeamRepository Team{ get; }
  17. IMeetingRepository Meeting{ get; }
  18. IAttendanceRepository Attendance { get; }
  19. IOrderTypeRepository OrderType { get; }
  20. IOrderRequestRepository OrderRequest { get; }
  21. IOrderAllocationRepository OrderAllocation { get; }
  22. ILeaveTypeRepository LeaveType{ get; }
  23. Task<int> CompleteAsync();
  24. void BeginTran();
  25. void CommitTran();
  26. void RollbackTran();
  27. object GetRepositoryByName(string name);
  28. }
  29. }