Ejemplo n.º 1
0
        /// <summary>
        /// 登录请求响应。
        /// </summary>
        /// <param name="replyField">与请求对应的应答信息数据结构。</param>
        /// <param name="resultField">请求的执行结果信息数据结构。</param>
        /// <param name="requestId">标识请求的请求编号。</param>
        /// <param name="isLast">最后一个应答标志。</param>
        public override void OnRspUserLogin(ref RspUserLoginField?replyField, ref RspInfoField resultField, int requestId, bool isLast)
        {
            Debug.Assert(isLast, "OnRspUserLogin() islast == false");

            if (m_loginEvent == null)
            {
                return;
            }

            if (resultField.ErrorID != 0 || replyField.HasValue == false)
            {
                m_loginEvent.Tag = resultField;
                m_loginEvent.Set(true);
            }
            else
            {
                m_frontID   = replyField.Value.FrontID;
                m_sessionID = replyField.Value.SessionID;

                int requestID = m_requetSeqIDCreator.Next();
                SettlementInfoConfirmField requestField = new SettlementInfoConfirmField();
                requestField.BrokerID   = m_brokerID;
                requestField.InvestorID = m_investorID;

                m_ctpUser.ReqSettlementInfoConfirm(ref requestField, requestID);

                m_loginEvent.Set(false);
            }
        }
        /// <summary>
        /// 结算单确认。
        /// </summary>
        public override void SettlementInfoConfirm()
        {
            int requestID = m_requetSeqIDCreator.Next();
            SettlementInfoConfirmField requestField = new SettlementInfoConfirmField();

            requestField.BrokerID   = m_brokerID;
            requestField.InvestorID = m_investorID;

            m_ctpUser.ReqSettlementInfoConfirm(ref requestField, requestID);
        }