/// <summary>
        /// 缓存港股
        /// </summary>
        /// <param name="orderRequest"></param>
        public bool CacheHKOrder(HkTodayEntrustEx orderRequest)
        {
            bool result = false;

            if (orderRequest != null && orderRequest.OriginalEntity != null)
            {
                if (orderRequest.IsCacheOrder)
                {
                    return(true);
                }

                try
                {
                    orderRequest.IsCacheOrder = true;
                    string strCode    = orderRequest.OriginalEntity.Code;
                    string strOrderId = orderRequest.OriginalEntity.EntrustNumber;
                    if (_HKOrderContainer.ContainsKey(strCode))
                    {
                        var levelOneItem = _HKOrderContainer[strCode];
                        if (levelOneItem == null)
                        {
                            levelOneItem = new Dictionary <string, HkTodayEntrustEx>();
                        }

                        if (levelOneItem.ContainsKey(strOrderId))
                        {
                            LogHelper.WriteDebug("OrderCache.CacheHKOrder:已经缓存委托单" + strOrderId);
                        }
                        else
                        {
                            levelOneItem.Add(strOrderId, orderRequest);
                        }
                    }
                    else
                    {
                        var levelOneItem = new Dictionary <string, HkTodayEntrustEx>();
                        levelOneItem.Add(strOrderId, orderRequest);
                        _HKOrderContainer.Add(strCode, levelOneItem);
                    }

                    result = true;
                }
                catch (Exception ex)
                {
                    string strMessage = "GT-2114:[港股报盘]缓存未开市委托异常。";
                    orderRequest.OriginalEntity.OrderMessage = strMessage;
                    OrderOfferDataLogic.UpdateHKOrderMessage(orderRequest.OriginalEntity);
                    LogHelper.WriteError(strMessage, ex);
                    result = false;
                }
            }

            return(result);
        }
        private void LoadHKOrderFromDB()
        {
            string format = "OrderStatusId = '{0}'";

            string where = string.Format(format, (int)Entity.Contants.Types.OrderStateType.DOSUnRequired);
            HK_TodayEntrustDal         dal  = new HK_TodayEntrustDal();
            List <HK_TodayEntrustInfo> list = null;

            try
            {
                //list = DataRepository.XhTodayEntrustTableProvider.Find(where);
                list = dal.GetListArray(where);
            }
            catch (Exception ex)
            {
                LogHelper.WriteError(ex.Message, ex);
            }

            if (Utils.IsNullOrEmpty(list))
            {
                return;
            }

            DateTime now = DateTime.Now;

            foreach (HK_TodayEntrustInfo table in list)
            {
                //DateTime entrustTime = table.EntrustTime.Value;
                //if (entrustTime.Year == now.Year && entrustTime.Month == now.Month && entrustTime.Day == now.Day)
                //{
                //    CacheStockOrder(new XhTodayEntrustTableEx(table));
                //}

                //不再判断是否是当天
                var order = new HkTodayEntrustEx(table);
                CacheHKOrder(order);
            }
        }
        private void SendHKValue(HkTodayEntrustEx value)
        {
            if (value.HasSendCacheOrder)
            {
                return;
            }

            //if(!IsTimeDone(value.OriginalEntity.SpotCode))
            //    return;

            try
            {
                value.HasSendCacheOrder = true;
                this.HKOfferWakeupEvent(this, new WakeupEventArgs <HkTodayEntrustEx>(value));
            }
            catch (Exception ex)
            {
                string strMessage = "GT-2111:[现货报盘]缓存未开市委托唤醒异常";
                value.OriginalEntity.OrderMessage = strMessage;
                OrderOfferDataLogic.UpdateHKOrderMessage(value.OriginalEntity);
                LogHelper.WriteError(ex.Message, ex);
            }
        }