public async Task UpdateUserDeviceAsync(UserDeviceDto userDeviceDto) { if (userDeviceDto == null) { return; } using (var dbContext = _dbContextScopeFactory.Create()) { var device = await _userDeviceRepository .FindAsync(w => w.UserId == userDeviceDto.UserId && w.IMEI == userDeviceDto.IMEI); if (device == null) { device = UserDevice.Create(userDeviceDto.UserId, userDeviceDto.Name, userDeviceDto.AppName, userDeviceDto.AppVersion, userDeviceDto.OSPlatform, userDeviceDto.OSVersion, userDeviceDto.SerialNumber, userDeviceDto.IMEI, userDeviceDto.FireBaseToken); _userDeviceRepository.Add(device); } else { device.Update( userDeviceDto.Name, userDeviceDto.AppName, userDeviceDto.AppVersion, userDeviceDto.OSPlatform, userDeviceDto.OSVersion, userDeviceDto.FireBaseToken); } await dbContext.SaveChangesAsync(); } }
public async Task RemoveUserDeviceAsync(UserDeviceDto userDeviceDto) { if (userDeviceDto == null) { return; } using (var dbContext = _dbContextScopeFactory.Create()) { var device = await _userDeviceRepository .FindAsync(w => w.UserId == userDeviceDto.UserId && w.IMEI == userDeviceDto.IMEI); if (device != null) { device.DeActive(); await dbContext.SaveChangesAsync(); } } }