public async Task SaveUserTimeZoneAsync(UserTimeZoneDto dto) { if (context.UserTimeZones.Any(utz => utz.UserId == dto.UserId && utz.TimeZoneEntityId == dto.TimeZoneEntityId)) { return; } context.UserTimeZones.Add(converter.Convert <UserTimeZoneDto, UserTimeZoneEntity>(dto)); await context.SaveChangesAsync(); }
/// <inheritdoc /> public async Task SetUserTimeZone(UserTimeZoneDto dto) { var settings = await GetOrCreateUserSettingAttribute(); if (settings.LastTimeZoneChangedTime.HasValue && settings.LastTimeZoneChangedTime.Value.AddDays(1) > _clockProvider.Now) { throw new UserFriendlyException("Please wait 24 hours to set time zone again!"); } await _settingManager.ChangeSettingForUserAsync( AbpSession.ToUserIdentifier(), TimingSettingNames.TimeZone, dto.TimeZone); settings.LastTimeZoneChangedTime = _clockProvider.Now; }
public async Task <IActionResult> Save(UserTimeZoneDto dto) { await timeZonesRepository.SaveUserTimeZoneAsync(dto); return(Ok()); }