public async Task AddAssetConditionAsync(string layerId, IAssetCondition assetCondition) { await _assetConditionRepository.InsertOrReplaceAsync(layerId, assetCondition); await _cacheManager.ClearCacheAsync("Added asset condition"); var list = (await GetConditionsAsync(layerId)).ToList(); var item = list.FirstOrDefault(x => x.Asset == assetCondition.Asset); if (item != null) { list.Remove(item); } list.Add(new AssetConditionDto { Asset = assetCondition.Asset, Regulation = assetCondition.Regulation, AvailableToClient = assetCondition.AvailableToClient, IsTradable = assetCondition.IsTradable, BankCardsDepositEnabled = assetCondition.BankCardsDepositEnabled, SwiftDepositEnabled = assetCondition.SwiftDepositEnabled }); await _assetConditionCache.CacheDataAsync($"{layerId}", list); }
/// <summary> /// Adds or entirely replaces an asset condition. /// </summary> /// <param name="layerId">The id of the layer that contains asset condition.</param> /// <param name="assetCondition">The asset conditons.</param> /// <returns></returns> public async Task InsertOrReplaceAsync(string layerId, IAssetCondition assetCondition) { var entity = new AssetConditionEntity(GetPartitionKey(layerId), GetRowKey(assetCondition.Asset), layerId); Mapper.Map(assetCondition, entity); await _storage.InsertOrReplaceAsync(entity); }
public static AssetConditionModel Create(IAssetCondition assetCondition) { return(new AssetConditionModel() { IsTradable = assetCondition.IsTradable, Asset = assetCondition.Asset, BankCardsDepositEnabled = assetCondition.BankCardsDepositEnabled, SwiftDepositEnabled = assetCondition.SwiftDepositEnabled, AvailableToClient = assetCondition.AvailableToClient, Regulation = assetCondition.Regulation }); }
private bool AreEqual(AssetConditionModel a, IAssetCondition b) { if (a == null && b == null) { return(true); } if (a != null && b == null || a == null) { return(false); } return(a.Asset == b.Asset && a.Regulation == b.Regulation && a.AvailableToClient == b.AvailableToClient); }
public async Task UpdateAssetConditionAsync(string layerId, IAssetCondition assetCondition) { await _myNoSqlWriter.Clear(); await _cachedAssetConditionsService.AddAssetConditionAsync(layerId, assetCondition); }
public Task UpdateAssetConditionAsync(string layerId, IAssetCondition assetCondition) { return(_cachedAssetConditionsService.AddAssetConditionAsync(layerId, assetCondition)); }