1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- using MTWorkHR.Core.Entities;
- using MTWorkHR.Core.IRepositories.Base;
- using MTWorkHR.Core.UnitOfWork;
- using MTWorkHR.Infrastructure.DBContext;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Reflection;
- using System.Text;
- using System.Threading.Tasks;
- namespace MTWorkHR.Infrastructure.UnitOfWorks
- {
- public class UnitOfWorkLog : IUnitOfWorkLog
- {
- private readonly HRDataContext context;
- public IRepositoryLog<UserLog> UserLog { get; }
- public IRepositoryLog<AuthLog> AuthLog { get; }
- public IRepositoryLog<FileLog> FileLog { get; }
- public IRepositoryLog<RoleLog> RoleLog { get; }
- public IRepositoryLog<SettingLog> SettingLog { get; }
- public IRepositoryLog<UserTaskLog> UserTaskLog { get; }
- public IRepositoryLog<TeamLog> TeamLog { get; }
- public IRepositoryLog<MeetingLog> MeetingLog { get; }
- public IRepositoryLog<AttendanceLog> AttendanceLog { get; }
- public UnitOfWorkLog(HRDataContext _context
- , IRepositoryLog<UserLog> userLog
- , IRepositoryLog<AuthLog> authenticateLog
- , IRepositoryLog<FileLog> FileLog
- , IRepositoryLog<RoleLog> RoleLog
- , IRepositoryLog<SettingLog> settingLog
- , IRepositoryLog<UserTaskLog> userTaskLog
- , IRepositoryLog<TeamLog> teamLog
- , IRepositoryLog<MeetingLog> meetingLog
- , IRepositoryLog<AttendanceLog> attendanceLog
- )
- {
- context = _context;
- UserLog = userLog;
- AuthLog = authenticateLog;
- this.FileLog = FileLog;
- this.RoleLog = RoleLog;
- this.SettingLog = settingLog;
- this.UserTaskLog = userTaskLog;
- this.TeamLog = teamLog;
- this.MeetingLog = meetingLog;
- this.AttendanceLog = attendanceLog;
- }
- public async Task<int> CompleteAsync()
- {
- return await context.SaveChangesAsync();
- }
- public object GetRepositoryByName(string name)
- {
- Type type = this.GetType();
- PropertyInfo info = type.GetProperty(name);
- if (info == null)
- throw new Exception(String.Format(
- "A property called {0} can't be accessed for type {1}.",
- name, type.FullName));
- var value = info.GetValue(this, null);
- // value = Convert.ChangeType(value, type);
- return value;
- }
- }
- }
|