private void gvPosition_DoubleClick(object sender, EventArgs e) { Point pt = gvPosition.GridControl.PointToClient(Control.MousePosition); var hi = gvPosition.CalcHitInfo(pt); if (hi.InRow) { var row = gvPosition.GetDataRow(hi.RowHandle); if (row != null) { decimal buyVol = decimal.Parse(row["BuyVolume"].ToString()); decimal sellVol = decimal.Parse(row["SellVolume"].ToString()); if (buyVol != 0 || sellVol != 0) { var curDate = CommonHelper.StringToDateTime(dePosition.EditValue.ToString()); TradeInfoModel tradeInfo = new TradeInfoModel { DisplayText = row["StockCode"].ToString() + '-' + row["StockName"].ToString() + '-' + _investorName, InvestorCode = _investorCode, InvestorName = _investorName, StockCode = row["StockCode"].ToString(), StockName = row["StockName"].ToString(), TradeCode = row["StockCode"].ToString() + '-' + _investorCode, }; var dialog = this.CreateDialog <FrmTimeSharingTradeIdentifier>(borderStyle: FormBorderStyle.Sizable, windowState: FormWindowState.Normal); dialog.Text = "分时交易标识"; dialog.TradeDate = curDate; dialog.TradeInfo = tradeInfo; dialog.Show(); } } } }
private void luTradeInfo_EditValueChanged(object sender, EventArgs e) { try { this._chartGenerated = false; chartControl1.Titles[0].Text = luTradeInfo.Text; this.esiProfitTitle.Text = string.Empty; _tradeInfo = luTradeInfo.GetSelectedDataRow() as TradeInfoModel; if (_tradeInfo == null) { return; } var sqlText1 = $@"EXEC [dbo].[sp_TIKLineData] @InvestorCode = '{_tradeInfo.InvestorCode}', @StockCode = '{_tradeInfo.StockCode}', @StartDate = '{_startDate}' ,@EndDate = '{_endDate}'"; var dsKLine = SqlHelper.ExecuteDataset(AppConfig._ConnString, CommandType.Text, sqlText1); if (dsKLine == null || dsKLine.Tables.Count == 0 || dsKLine.Tables[0].Rows.Count == 0) { return; } _KLineData = dsKLine.Tables[0]; var startDate = _KLineData.AsEnumerable().Select(x => x.Field <DateTime>("TradeDate")).Min(); var endDate = _KLineData.AsEnumerable().Select(x => x.Field <DateTime>("TradeDate")).Max(); _tradeRecords = _dailyRecordService.GetDailyRecordsDetail(stockCode: _tradeInfo.StockCode, beneficiary: _tradeInfo.InvestorCode, tradeDateFrom: startDate, tradeDateTo: endDate) .Where(x => x.DealVolume != 0) .OrderBy(x => x.BeneficiaryName).ThenBy(x => x.TradeDate).ThenBy(x => x.TradeTime).ToList(); _dealAvg = _tradeRecords.GroupBy(x => new { TradeDate = x.TradeDate, DealFlag = x.DealFlag }) .Select(x => new DealAvgInfo { DealFlag = x.Key.DealFlag, DealPrice = CommonHelper.SetDecimalDigits(x.Sum(y => y.DealAmount) / x.Sum(y => Math.Abs(y.DealVolume)), 3), DealVolume = x.Sum(y => Math.Abs(y.DealVolume)), TradeDate = x.Key.TradeDate, }).ToList(); var sqlText2 = $@"EXEC [dbo].[sp_TIPositionProfit] @InvestorCode = '{_tradeInfo.InvestorCode}', @StockCode = '{_tradeInfo.StockCode}', @StartDate = '{startDate}' ,@EndDate = '{endDate}'"; var dsProfit = SqlHelper.ExecuteDataset(AppConfig._ConnString, CommandType.Text, sqlText2); if (dsProfit != null && dsProfit.Tables.Count == 1) { _positionProfit = dsProfit.Tables[0]; } DisplayChart(startDate, endDate); this._chartGenerated = true; } catch (Exception ex) { DXMessage.ShowError(ex.Message); } }
private void ShowTimeSharingForm(DateTime tradeDate, TradeInfoModel tradeInfo) { var dialog = this.CreateDialog <FrmTimeSharingTradeIdentifier>(borderStyle: FormBorderStyle.Sizable, windowState: FormWindowState.Normal); dialog.Text = "分时交易标识"; dialog.TradeDate = tradeDate.Date; dialog.TradeInfo = tradeInfo; dialog.Show(); }
public async Task <HttpResponseMessage> AddOrUpdateTrade([FromBody] TradeInfoModel trade) { TradeInfo tradeInfo = await _tradeManager.AddOrUpdate(AutoMapper.Mapper.Map <TradeInfo>(trade)); if (tradeInfo != null) { return(new HttpResponseMessage(HttpStatusCode.OK)); } return(new HttpResponseMessage(HttpStatusCode.InternalServerError)); }
private void luTradeInfo_EditValueChanged(object sender, EventArgs e) { try { this._chartGenerated = false; _tradeInfo = luTradeInfo.GetSelectedDataRow() as TradeInfoModel; GetViewData(); DisplayChart(); this._chartGenerated = true; } catch (Exception ex) { DXMessage.ShowError(ex.Message); } }
public void GetResponseModelTest() { var target = new SpGatewayResponse() { MerchantId = "MS31756909", Status = "SUCCESS", Version = "1.4", TradeInfo = "9d9d94de7cdaa5c73ba288bb9fafac953691b4e72d865e4e098d7e96eded1122d4accc05946ccec051dd621b070cad3a7ff98656178bcfebbbd76b6fe11684476a0d4815c67195694106b33f6a922398047291f5775c2202553896d4b6abbdf5df5e0e86af72ae9b41329657b4e23dd9ec287464186928f30ee0fd859ed96c6982ccae7836102e97402699a2c780a08fa564a04bda3e7ca305efba44f535f0dbb4f54bea55fc56512a97910fd13712ea046d7c411ce2385fba959241899dbc60eeb4ebe54fe76a14087e3e979217ecfb111406b1c64c6f4a66186fab9eb0c4566909a128d6743e2bf560ce699eaa97a01b983be4b09dc706e69927d271443a3d3bb23789991893043c5c929d6f2586d82f920eb7c6075efa4d3019b13daca3f456448b4d8da93d6243962a062c70c603dea5c1ef60df97b3185302a83bc512bf43462321eeae92f064b2d33c8d2c434e3fbc83b3cad22f6b48f2b690395a0f08", TradeSha = "0F271B65D055B3264D6C6C00FD6FDCC6BC7F653F8DAC38399C158F54AB2375B6", Key = "xbEznJ0PExvWzd5ct72dLPCMPIBUw8K3", Vi = "kpDI8DxNb2JKgOXK" }; var actual = target.GetResponseModel <TradeInfoModel>(); var expected = new TradeInfoModel { Status = "SUCCESS", Message = "\u4ed8\u6b3e\u6210\u529f", Result = new Result { MerchantID = "MS31756909", Amt = 900, TradeNo = "17060802213088297", MerchantOrderNo = "636324851460397211", RespondType = "JSON", IP = "180.217.182.136", EscrowBank = "Esun", PaymentType = "WEBATM", PayTime = "2017-06-08 02:21:30", PayerAccount5Code = "12345", PayBankCode = "808" } }; expected.ShouldBeEquivalentTo(actual); }