private void CreatePortfolioButtonClick(object sender, EventArgs e) { var portfolioName = "TOP " + AccountModel.Instance.GetUserLogin(); if (portfolioName.Length > 50) portfolioName = portfolioName.Substring(0, 50); var portfolio = new TopPortfolio { Name = portfolioName, Criteria = SelectedFunction.Function, DescendingOrder = SelectedFunction.PreferredSortOrder == SortOrder.Descending, MarginValue = SelectedFunction.MarginValue, ParticipantCount = ParticipantCount }; var complete = new CompleteSubscribeOnPortfolioDlg(portfolio).ShowDialog() == DialogResult.OK; if (!complete) return; // открыть диалог настройки авто-торговли var dlg = new AutoTradeSettingsForm(); if (dlg.ShowDialog(this) != DialogResult.OK) return; var tradeSettings = dlg.sets; RequestStatus status; try { status = AccountModel.Instance.ServerProxy.SubscribeOnPortfolio( CurrentProtectedContext.Instance.MakeProtectedContext(), AccountModel.Instance.GetUserLogin(), portfolio, null, tradeSettings); } catch (Exception ex) { //4 debug MessageBox.Show(this, "Операция выполнена с ошибкой:" + Environment.NewLine + ex.Message, "Предупреждение", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); Logger.Info("TopPortfolioControl.Subscribe: error calling SubscribeOnPortfolio/UnsubscribePortfolio", ex); return; } if (status == RequestStatus.OK) MessageBox.Show(this, "Операция выполнена успешно", "Информация", MessageBoxButtons.OK, MessageBoxIcon.Information); else MessageBox.Show(this, "Операция выполнена с ошибкой:" + Environment.NewLine + EnumFriendlyName<RequestStatus>.GetString(status), "Предупреждение", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); }
private void Subscribe(object sender, EventArgs e) { RequestStatus status; try { if (isSubsribed) { status = AccountModel.Instance.ServerProxy.UnsubscribePortfolio( CurrentProtectedContext.Instance.MakeProtectedContext(), AccountModel.Instance.GetUserLogin(), true, true); } else { var complete = new CompleteSubscribeOnPortfolioDlg(portfolio).ShowDialog() == DialogResult.OK; if (!complete) return; var tradeSettings = new AutoTradeSettings(); // открыть диалог настройки авто-торговли var dlg = new AutoTradeSettingsForm(); if (dlg.ShowDialog(this) == DialogResult.OK) tradeSettings = dlg.sets; status = AccountModel.Instance.ServerProxy.SubscribeOnPortfolio( CurrentProtectedContext.Instance.MakeProtectedContext(), AccountModel.Instance.GetUserLogin(), portfolio, null, tradeSettings); } } catch (Exception ex) { //4 debug MessageBox.Show(this, "Операция выполнена с ошибкой:" + Environment.NewLine + ex.Message, Localizer.GetString("TitleWarning"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); Logger.Info("TopPortfolioControl.Subscribe: error calling SubscribeOnPortfolio/UnsubscribePortfolio", ex); return; } if (status == RequestStatus.OK) MessageBox.Show(this, "Операция выполнена успешно", Localizer.GetString("TitleInformation"), MessageBoxButtons.OK, MessageBoxIcon.Information); else MessageBox.Show(this, "Операция выполнена с ошибкой:" + Environment.NewLine + EnumFriendlyName<RequestStatus>.GetString(status), Localizer.GetString("TitleWarning"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); IsSubsribed = !isSubsribed; if (SubscriptionChanged != null) SubscriptionChanged(this, new EventArgs()); }