public async Task <IEnumerable <IClientDialog> > GetDialogsWithPreTradeConditionAsync(string clientId, string assetId)
        {
            IEnumerable <IDialogCondition> conditions = await _conditionsRepository.GetDialogConditionsAsync(DialogConditionType.Pretrade);

            var clientDialogs = await _clientDialogsRepository.GetClientDialogsAsync(clientId);

            return(clientDialogs.Where(item =>
                                       conditions.Any(x => x.DialogId == item.Id && x.Data.GetConditionParameters <PreTradeParameters>().AssetId == assetId)));
        }
示例#2
0
        public async Task <IEnumerable <IClientDialog> > GetClientDialogsAsync(string clientId)
        {
            var clientDialogs = await _dialogsRepository.GetClientDialogsAsync(clientId);

            var submittedDialogs = await _dialogSubmitsRepository.GetSubmittedDialogsAsync(clientId);

            //don't return submitted dialogs
            return(clientDialogs.Where(item => submittedDialogs.All(i => i.DialogId != item.Id)));
        }