/// <summary> /// Грузим список опреаций для расчетов по бумаге для выбранного аккаунта /// </summary> /// <param name="acc">аккаунт</param> /// <returns></returns> public async Task DoLoad_ObligList(Account_m acc, bool fl_refresh = false) //грузим инфу по портфелью { var bounds = Program.InnerAccount.Portfolios[acc]; var load_signal = bounds.BoundsList.Select(t => t.Bound.Operations_list).Select(t => t.Count).Sum(); //если операции загружены то > 0 try { if (load_signal > 0) { if (!fl_refresh) { LoadObligInfoDone?.Invoke(Program.InnerAccount.Portfolios[acc]); return; } } //if (bounds.BoundsList.Count == 0) //{ // LoadObligInfoDone?.Invoke(bounds); // return; //} foreach (var item in bounds.BoundsList) { item.Bound.Operations_list = await Program.CurrentContext.OperationsAsync(new DateTime(2015, 01, 01), DateTime.Now, item.Bound.Base.Figi, bounds.Acc.BrokerAccountId); //item.SetMode(); } await LoadAllBndHistory(bounds); foreach (var item in bounds.BoundsList) { await LoadInfoBound(item.Bound); //item.SetMode(); } LoadObligInfoDone?.Invoke(bounds); } catch (Exception mes) { LoadObligInfoDone?.Invoke(bounds, mes.Message); //throw; } }
public Bounds(Account_m acc) { _boundslist = new List <Bound_Conclav>(); Acc = acc; }