public async Task<List<UserNotification>> GetUserNotificationsAsync(UserIdentifier user, UserNotificationState? state = null, int skipCount = 0, int maxResultCount = int.MaxValue) { var userNotifications = await _store.GetUserNotificationsWithNotificationsAsync(user, state, skipCount, maxResultCount); return userNotifications .Select(un => un.ToUserNotification()) .ToList(); }
public virtual async Task UpdateAllUserNotificationStatesAsync(long userId, UserNotificationState state) { var userNotifications = await _userNotificationRepository.Query().Where(s => s.UserId == userId).ToListAsync(); foreach (var userNotification in userNotifications) { userNotification.State = state; } await SaveChangesAsync(); }
public void UpdateAllUserNotificationStates(UserIdentifier user, UserNotificationState state) { var userNotifications = _userNotificationInfoRepository.GetAllList(un => un.UserId == user.UserId); foreach (var userNotification in userNotifications) { userNotification.State = state; } _unitOfWorkManager.Current.SaveChangesAsync(); }
/// <summary> /// 修改消息读取状态 /// </summary> /// <param name="idList"></param> /// <param name="state"></param> /// <returns></returns> public async Task UpdateUserNotificationStatus(List <Guid> idList, UserNotificationState state) { var data = _userNotificationInfoRepository.GetAll().Where(w => idList.Contains(w.Id)); foreach (var item in data) { item.State = state; await _userNotificationInfoRepository.UpdateAsync(item); } }
/// <summary> /// 修改消息读取状态 /// </summary> /// <param name="list"></param> /// <returns></returns> public async Task UpdateUserNotificationStatus(List <UserNotificationInfoDto> list) { var idList = list.Select(s => s.Id).ToArray(); UserNotificationState state = list[0].State; var data = _userNotificationInfoRepository.GetAll().Where(w => idList.Contains(w.Id)); foreach (var item in data) { item.State = state; await _userNotificationInfoRepository.UpdateAsync(item); } }
public static bool IsNotificationDisabled() { var result = SHQueryUserNotificationState(out var state); if (result == NativeConstants.ERROR_SUCCESS && state != LastNotificationState) { Logger.Debug($"Detected NotificationState change from {LastNotificationState} to {state}"); LastNotificationState = state; } return(NotificationsDisabledStates.Contains(state)); //return state != UserNotificationState.QUNS_ACCEPTS_NOTIFICATIONS && state != UserNotificationState.QUNS_QUIET_TIME; }
public virtual void UpdateAllUserNotificationStates(UserIdentifier user, UserNotificationState state) { using (_unitOfWorkManager.Current.SetTenantId(user.TenantId)) { var userNotifications = _userNotificationRepository.GetAllList(un => un.UserId == user.UserId); foreach (var userNotification in userNotifications) { userNotification.State = state; } _unitOfWorkManager.Current.SaveChanges(); } }
public async Task UpdateAllUserNotificationStatesAsync(long userId, UserNotificationState state) { await _unitOfWorkManager.PerformAsyncUow(async() => { var userNotifications = await _userNotificationRepository.GetAllListAsync(un => un.UserId == userId); foreach (var userNotification in userNotifications) { userNotification.State = state; } await _unitOfWorkManager.Current.SaveChangesAsync(); }); }
/// <summary> /// Updates all notification states for a user. /// </summary> public async Task UpdateAllUserNotificationStatesAsync(Guid userId, UserNotificationState state) { var result = await _userNotificationRepository.GetListAsync(userId, state == UserNotificationState.Read? UserNotificationState.Unread : UserNotificationState.Read ); foreach (var un in result) { un.State = state; } await _userNotificationRepository.UpdateManyAsync(result); }
private async void Timer_Elapsed(object sender, ElapsedEventArgs e) { if (IsSuspended && SuspensionCause == SuspensionCause.Manual) { // App was manually suspended, only user can unsuspend it return; } if (NeedABreak.Properties.Settings.Default.AutomaticSuspension) { UserNotificationState state = QueryUserNotificationState.GetState(); if (IsSuspended) { // App was automatically suspended, shall we unsuspend it ? if (state == UserNotificationState.AcceptsNotifications) { Resume(); } else { return; } } else { // App is not suspended, shall we automatically suspend it ? switch (state) { case UserNotificationState.Busy: case UserNotificationState.RunningDirect3dFullScreen: case UserNotificationState.PresentationMode: Suspend(SuspensionCause.Automatic); return; } } } double minutesLeft = GetMinutesLeft(); if (minutesLeft <= 0) { await TimesUp(); } else if (minutesLeft <= 1) { await TimesAlmostUp(); } }
public async Task <NotificationsOutput> GetMyNotifications(UserNotificationState state, int?take = null) { if (AbpSession.UserId == null) { return(new NotificationsOutput()); } var userIdentifier = new UserIdentifier(AbpSession.TenantId, AbpSession.UserId.Value); var notifications = await _userNotificationManager.GetUserNotificationsAsync(userIdentifier, state); if (take.HasValue) { notifications = notifications.Take(take.Value).ToList(); } return(new NotificationsOutput() { Notifications = notifications.ToList() }); }
public virtual async Task UpdateUserNotificationStateAsync( int?tenantId, Guid userNotificationId, UserNotificationState state) { await _unitOfWorkManager.WithUnitOfWorkAsync(async() => { using (_unitOfWorkManager.Current.SetTenantId(tenantId)) { var userNotification = await _userNotificationRepository.FirstOrDefaultAsync(userNotificationId); if (userNotification == null) { return; } userNotification.State = state; await _unitOfWorkManager.Current.SaveChangesAsync(); } }); }
public virtual void UpdateUserNotificationState( int?tenantId, Guid userNotificationId, UserNotificationState state) { _unitOfWorkManager.WithUnitOfWork(() => { using (_unitOfWorkManager.Current.SetTenantId(tenantId)) { var userNotification = _userNotificationRepository.FirstOrDefault(userNotificationId); if (userNotification == null) { return; } userNotification.State = state; _unitOfWorkManager.Current.SaveChanges(); } }); }
/// <summary> /// Updates a user notification state. /// </summary> /// <param name="userNotificationManager">User notificaiton manager</param> /// <param name="tenantId">Tenant Id</param> /// <param name="userNotificationId">The user notification id.</param> /// <param name="state">New state.</param> public static void UpdateUserNotificationState(this IUserNotificationManager userNotificationManager, int?tenantId, Guid userNotificationId, UserNotificationState state) { AsyncHelper.RunSync(() => userNotificationManager.UpdateUserNotificationStateAsync(tenantId, userNotificationId, state)); }
static extern int SHQueryUserNotificationState(out UserNotificationState pquns);
public Task UpdateUserNotificationStateAsync(int? tenantId, Guid userNotificationId, UserNotificationState state) { return _store.UpdateUserNotificationStateAsync(tenantId, userNotificationId, state); }
public virtual Task<int> GetUserNotificationCountAsync(long userId, UserNotificationState? state = null) { return _userNotificationRepository.CountAsync(un => un.UserId == userId && (state == null || un.State == state.Value)); }
/// <summary> /// Gets notifications for a user. /// </summary> /// <param name="userNotificationManager">User notificaiton manager</param> /// <param name="user">User.</param> /// <param name="state">State</param> /// <param name="skipCount">Skip count.</param> /// <param name="maxResultCount">Maximum result count.</param> public static List<UserNotification> GetUserNotifications(this IUserNotificationManager userNotificationManager, UserIdentifier user, UserNotificationState? state = null, int skipCount = 0, int maxResultCount = int.MaxValue) { return AsyncHelper.RunSync(() => userNotificationManager.GetUserNotificationsAsync(user, state, skipCount: skipCount, maxResultCount: maxResultCount)); }
public Task UpdateUserNotificationStateAsync(int?tenantId, Guid userNotificationId, UserNotificationState state) { return(_store.UpdateUserNotificationStateAsync(tenantId, userNotificationId, state)); }
public async Task UpdateUserNotificationStateAsync(int?tenantId, Guid userNotificationId, UserNotificationState state) { await _unitOfWorkManager.PerformAsyncUow(async() => { var userNotification = await _userNotificationRepository.FirstOrDefaultAsync(userNotificationId); if (userNotification == null) { return; } userNotification.State = state; await _unitOfWorkManager.Current.SaveChangesAsync(); }); }
public Task UpdateAllUserNotificationStatesAsync(long userId, UserNotificationState state) { return _store.UpdateAllUserNotificationStatesAsync(userId, state); }
public Task UpdateUserNotificationStateAsync(Guid userNotificationId, UserNotificationState state) { return _store.UpdateUserNotificationStateAsync(userNotificationId, state); }
public Task UpdateAllUserNotificationStatesAsync(UserIdentifier user, UserNotificationState state) { return _store.UpdateAllUserNotificationStatesAsync(user, state); }
/// <summary> /// 更新用户通知状态-异步 /// </summary> /// <param name="userNotificationId">用户通知Id</param> /// <param name="state">用户通知状态</param> /// <returns></returns> public Task UpdateUserNotificationStateAsync(Guid userNotificationId, UserNotificationState state) { return Task.FromResult(0); }
public UserNotificationInfo() { State = UserNotificationState.Unread; }
/// <summary> /// 获取用户通知-异步 /// </summary> /// <param name="userId">用户Id</param> /// <param name="state">状态</param> /// <param name="skipCount">跳过数</param> /// <param name="maxResultCount">最大结果数</param> /// <returns></returns> public Task<List<UserNotificationInfoWithNotificationInfo>> GetUserNotificationsWithNotificationsAsync(long userId, UserNotificationState? state = null, int skipCount = 0, int maxResultCount = int.MaxValue) { return Task.FromResult(new List<UserNotificationInfoWithNotificationInfo>()); }
public virtual async Task UpdateUserNotificationStateAsync(Guid userNotificationId, UserNotificationState state) { var userNotification = await _userNotificationRepository.FirstOrDefaultAsync(userNotificationId); if (userNotification == null) { return; } userNotification.State = state; }
public Task UpdateUserNotificationStateAsync(int?notificationId, Guid userNotificationId, UserNotificationState state) { return(Task.FromResult(0)); }
public virtual async Task UpdateUserNotificationStateAsync(int? tenantId, Guid userNotificationId, UserNotificationState state) { using (_unitOfWorkManager.Current.SetTenantId(tenantId)) { var userNotification = await _userNotificationRepository.FirstOrDefaultAsync(userNotificationId); if (userNotification == null) { return; } userNotification.State = state; await _unitOfWorkManager.Current.SaveChangesAsync(); } }
/// <summary> /// Updates a user notification state. /// </summary> /// <param name="userNotificationManager">User notificaiton manager</param> /// <param name="tenantId">Tenant Id</param> /// <param name="userNotificationId">The user notification id.</param> /// <param name="state">New state.</param> public static void UpdateUserNotificationState(this IUserNotificationManager userNotificationManager, int? tenantId, Guid userNotificationId, UserNotificationState state) { AsyncHelper.RunSync(() => userNotificationManager.UpdateUserNotificationStateAsync(tenantId, userNotificationId, state)); }
/// <summary> /// 获取接收到的消息数量 /// </summary> /// <param name="receiveUserId"></param> /// <returns></returns> public async Task <List <SysChatRecordSummary> > GetChatRecordSummaryAsync(UserNotificationState state = UserNotificationState.Unread) { long receiveUserId = AbpSession.UserId.Value; return(await _sysChatRecordRepository.GetChatRecordSummaryAsync(receiveUserId, state)); }
public virtual Task<List<UserNotificationInfoWithNotificationInfo>> GetUserNotificationsWithNotificationsAsync(long userId, UserNotificationState? state = null, int skipCount = 0, int maxResultCount = int.MaxValue) { var query = from userNotificationInfo in _userNotificationRepository.GetAll() join notificationInfo in _notificationRepository.GetAll() on userNotificationInfo.NotificationId equals notificationInfo.Id where userNotificationInfo.UserId == userId && (state == null || userNotificationInfo.State == state.Value) orderby notificationInfo.CreationTime descending select new { userNotificationInfo, notificationInfo }; query = query.PageBy(skipCount, maxResultCount); var list = query.ToList(); return Task.FromResult(list.Select( a => new UserNotificationInfoWithNotificationInfo(a.userNotificationInfo, a.notificationInfo) ).ToList()); }
/// <inheritdoc /> public Task UpdateAllUserNotificationStatesAsync(long user, UserNotificationState state) { return(_notificationRepository.UpdateAllUserNotificationStatesAsync(user, state)); }
public virtual async Task UpdateAllUserNotificationStatesAsync(UserIdentifier user, UserNotificationState state) { using (_unitOfWorkManager.Current.SetTenantId(user.TenantId)) { var userNotifications = await _userNotificationRepository.GetAllListAsync(un => un.UserId == user.UserId); foreach (var userNotification in userNotifications) { userNotification.State = state; } await _unitOfWorkManager.Current.SaveChangesAsync(); } }
public Task<int> GetUserNotificationCountAsync(UserIdentifier user, UserNotificationState? state = null) { return _store.GetUserNotificationCountAsync(user, state); }
/// <inheritdoc /> public Task UpdateUserNotificationStateAsync(Guid userNotificationId, UserNotificationState state) { return(_notificationRepository.UpdateUserNotificationStateAsync(userNotificationId, state)); }
public virtual Task<List<UserNotificationInfoWithNotificationInfo>> GetUserNotificationsWithNotificationsAsync(UserIdentifier user, UserNotificationState? state = null, int skipCount = 0, int maxResultCount = int.MaxValue) { using (_unitOfWorkManager.Current.SetTenantId(user.TenantId)) { var query = from userNotificationInfo in _userNotificationRepository.GetAll() join tenantNotificationInfo in _tenantNotificationRepository.GetAll() on userNotificationInfo.TenantNotificationId equals tenantNotificationInfo.Id where userNotificationInfo.UserId == user.UserId && (state == null || userNotificationInfo.State == state.Value) orderby tenantNotificationInfo.CreationTime descending select new { userNotificationInfo, tenantNotificationInfo = tenantNotificationInfo }; query = query.PageBy(skipCount, maxResultCount); var list = query.ToList(); return Task.FromResult(list.Select( a => new UserNotificationInfoWithNotificationInfo(a.userNotificationInfo, a.tenantNotificationInfo) ).ToList()); } }
public Task UpdateAllUserNotificationStatesAsync(Guid userId, UserNotificationState state) { return(_store.UpdateAllUserNotificationStatesAsync(userId, state)); }
public virtual Task<int> GetUserNotificationCountAsync(UserIdentifier user, UserNotificationState? state = null) { using (_unitOfWorkManager.Current.SetTenantId(user.TenantId)) { return _userNotificationRepository.CountAsync(un => un.UserId == user.UserId && (state == null || un.State == state.Value)); } }
public Task UpdateAllUserNotificationStatesAsync(long userId, UserNotificationState state) { return(Task.FromResult(0)); }
/// <summary> /// 获取接收到的消息数量 /// </summary> /// <param name="receiveUserId"></param> /// <returns></returns> public async Task <JsonResult> GetChatRecordSummary([FromBody] UserNotificationState state) { var data = await _sysChatRecordAppService.GetChatRecordSummaryAsync(state); return(Json(data)); }
/// <summary> /// Updates all notification states for a user. /// </summary> /// <param name="userNotificationManager">User notificaiton manager</param> /// <param name="user">User.</param> /// <param name="state">New state.</param> public static void UpdateAllUserNotificationStates(this IUserNotificationManager userNotificationManager, UserIdentifier user, UserNotificationState state) { AsyncHelper.RunSync(() => userNotificationManager.UpdateAllUserNotificationStatesAsync(user, state)); }
public void UpdateUserNotificationState(int?tenantId, Guid userNotificationId, UserNotificationState state) { }
/// <summary> /// 更新全部用户通知状态-异步 /// </summary> /// <param name="userId">用户Id</param> /// <param name="state">用户通知状态</param> /// <returns></returns> public Task UpdateAllUserNotificationStatesAsync(long userId, UserNotificationState state) { return Task.FromResult(0); }
public void UpdateAllUserNotificationStates(UserIdentifier user, UserNotificationState state) { }
/// <summary> /// 获取用户通知数-异步 /// </summary> /// <param name="userId">用户Id</param> /// <param name="state">状态</param> /// <returns></returns> public Task<int> GetUserNotificationCountAsync(long userId, UserNotificationState? state = null) { return Task.FromResult(0); }
public Task UpdateAllUserNotificationStatesAsync(UserIdentifier user, UserNotificationState state) { return Task.FromResult(0); }
public Task UpdateAllUserNotificationStatesAsync(UserIdentifier user, UserNotificationState state) { return(_store.UpdateAllUserNotificationStatesAsync(user, state)); }
/// <summary> /// Updates a user notification state. /// </summary> public async Task UpdateUserNotificationStateAsync(Guid userId, Guid notificationId, UserNotificationState state) { var result = await _userNotificationRepository.FindAsync(userId, notificationId); if (result != null) { result.State = state; await _userNotificationRepository.UpdateAsync(result); } }
public Task UpdateAllUserNotificationStatesAsync(UserIdentifier user, UserNotificationState state) { return(Task.FromResult(0)); }
/// <summary> /// Gets user notification count. /// </summary> /// <param name="userNotificationManager">User notificaiton manager</param> /// <param name="user">User.</param> /// <param name="state">State.</param> public static int GetUserNotificationCount(this IUserNotificationManager userNotificationManager, UserIdentifier user, UserNotificationState? state = null) { return AsyncHelper.RunSync(() => userNotificationManager.GetUserNotificationCountAsync(user, state)); }
public virtual async Task UpdateAllUserNotificationStatesAsync(long userId, UserNotificationState state) { var userNotifications = await _userNotificationRepository.GetAllListAsync(un => un.UserId == userId); foreach (var userNotification in userNotifications) { userNotification.State = state; } }
public Task<int> GetUserNotificationCountAsync(long userId, UserNotificationState? state = null) { return _store.GetUserNotificationCountAsync(userId, state); }