public void AddUserDepartment(bool currentDep, int departmentId, bool isDeleted, bool isDepartmentManager, int userId, DateTime validFrom, DateTime validTo) { using (IUnitOfWork work = UnitOfWork.Begin()) { UserDepartment ud = _userDepartmentRepository.FindByUserId(userId).Where(d => d.DepartmentId == departmentId).SingleOrDefault(); if (ud == null) { ud = DomainObjectFactory.CreateUserDepartment(); _userDepartmentRepository.Add(ud); } ud.CurrentDep = currentDep; ud.DepartmentId = departmentId; ud.IsDeleted = isDeleted; ud.IsDepartmentManager = isDepartmentManager; ud.UserId = userId; ud.ValidFrom = validFrom; ud.ValidTo = validTo; work.Commit(); var userDepLogEntity = new UserDepartmentEventEntity(_userDepartmentRepository.FindById(ud.Id)); _logService.CreateLog(CurrentUser.Get().Id, "web", flag, CurrentUser.Get().HostName, CurrentUser.Get().CompanyId, userDepLogEntity.GetCreateMessage()); } }
public void UpdateUserDepartment(int userId, int departmentId, DateTime validFrom, DateTime validTo, bool isDelete) { using (IUnitOfWork work = UnitOfWork.Begin()) { UserDepartment userDepartment = _userDepartmentRepository.FindByUserId(userId).Where(ud => ud.DepartmentId == departmentId).SingleOrDefault(); if (userDepartment == null) { userDepartment = DomainObjectFactory.CreateUserDepartment(); _userDepartmentRepository.Add(userDepartment); userDepartment.UserId = userId; userDepartment.DepartmentId = departmentId; userDepartment.ValidFrom = validFrom; userDepartment.ValidTo = validTo; userDepartment.CurrentDep = false; userDepartment.IsDepartmentManager = userDepartment.IsDepartmentManager && !isDelete; userDepartment.IsDeleted = isDelete; work.Commit(); var userDepLogEntity = new UserDepartmentEventEntity(_userDepartmentRepository.FindById(userDepartment.Id)); _logService.CreateLog(CurrentUser.Get().Id, "web", flag, CurrentUser.Get().HostName, CurrentUser.Get().CompanyId, userDepLogEntity.GetCreateMessage()); } else { var userDepLogEntity = new UserDepartmentEventEntity(userDepartment); userDepartment.UserId = userId; userDepartment.DepartmentId = departmentId; userDepartment.ValidFrom = validFrom; userDepartment.ValidTo = validTo; userDepartment.CurrentDep = false; userDepartment.IsDepartmentManager = userDepartment.IsDepartmentManager && !isDelete; userDepartment.IsDeleted = isDelete; work.Commit(); userDepLogEntity.SetNewUserDepartment(_userDepartmentRepository.FindById(userDepartment.Id)); _logService.CreateLog(CurrentUser.Get().Id, "web", flag, CurrentUser.Get().HostName, CurrentUser.Get().CompanyId, userDepLogEntity.GetEditMessage()); } } }