/// <summary> /// 缓存股指期货 /// </summary> /// <param name="futuresorder"></param> public void CacheStockIndexFuturesOrder(QhTodayEntrustTableEx futuresorder) { if (futuresorder != null && futuresorder.OriginalEntity != null) { if (futuresorder.IsCacheOrder) { return; } try { futuresorder.IsCacheOrder = true; string strCode = futuresorder.OriginalEntity.ContractCode; string strOrderId = futuresorder.OriginalEntity.EntrustNumber; if (_GZQHOrderContainer.ContainsKey(strCode)) { var levelOneItem = _GZQHOrderContainer[strCode]; if (levelOneItem == null) { levelOneItem = new Dictionary <string, QhTodayEntrustTableEx>(); } if (levelOneItem.ContainsKey(strOrderId)) { LogHelper.WriteDebug("OrderCache.CacheStockIndexFuturesOrder:已经缓存委托单" + strOrderId); } else { levelOneItem.Add(strOrderId, futuresorder); } //levelOneItem.Add(strOrderId, futuresorder); } else { var levelOneItem = new Dictionary <string, QhTodayEntrustTableEx>(); levelOneItem.Add(strOrderId, futuresorder); _GZQHOrderContainer.Add(strCode, levelOneItem); } } catch (Exception ex) { string strMessage = "GT-2116:[股指期货报盘]缓存未开市委托异常" + ex.Message; futuresorder.OriginalEntity.OrderMessage = strMessage; OrderOfferDataLogic.UpdateFutureOrder(futuresorder.OriginalEntity); LogHelper.WriteError(ex.Message, ex); } } }
private void SendSPQHValue(QhTodayEntrustTableEx value) { if (value.HasSendCacheOrder) { return; } //if (!IsTimeDone(value.OriginalEntity.ContractCode)) // return; try { this.QHOfferWakeupEvent(this, new WakeupEventArgs <QhTodayEntrustTableEx>(value)); value.HasSendCacheOrder = true; } catch (Exception ex) { string strMessage = "GT-2112:[商品期货报盘]缓存未开市委托唤醒异常" + ex.Message; value.OriginalEntity.OrderMessage = strMessage; OrderOfferDataLogic.UpdateFutureOrder(value.OriginalEntity); LogHelper.WriteError(ex.Message, ex); } }