private static void SetTrigger(DateTime triggerTime, Types.TradingTimeType timeType, string id)
        {
            DateTime now  = DateTime.Now;
            DateTime time = new DateTime(now.Year, now.Month, now.Day, triggerTime.Hour, triggerTime.Minute,
                                         triggerTime.Second);

            string expFormat = "{0} {1} {2} ? * *";
            string exp       = String.Format(expFormat, time.Second, time.Minute, time.Hour);

            ScheduleEventArgs args = new ScheduleEventArgs
            {
                //BourseTypeID = bourseType.BourseTypeID,
                TimeType = timeType,
                Time     = time
            };

            string newTriggerName = id + "trigger";
            string newGroupName   = id + "Group";

            CronTrigger trigger = new CronTrigger(newTriggerName, newGroupName, exp);

            trigger.JobDataMap.SetScheduleEventArgs(args);

            string    newJobName = id + "job";
            JobDetail job        = new JobDetail(newJobName, null, typeof(ScheduleJob));

            scheduler.ScheduleJob(job, trigger);

            string format = "ScheduleManager.SetTrigger[JobName={0},TiggerName={1},GroupName={2}]";
            string desc   = string.Format(format, newJobName, newTriggerName, newGroupName);

            //LogHelper.WriteDebug(desc + " Args=" + args);
            LogHelper.WriteDebug("ScheduleManager.SetTrigger" + args);
        }
        private static void SetBeginTime(DateTime time, CM_BourseType type, Types.TradingTimeType timeType)
        {
            string sTime = GetKeyTime(time);

            if (!matchTimes.Contains(sTime))
            {
                matchTimes.Add(sTime);
            }

            if (FirstBeginTime.Year == 2000)
            {
                FirstBeginTime = time;
                return;
            }

            if (FirstBeginTime.Hour > time.Hour)
            {
                FirstBeginTime = time;

                return;
            }

            if (FirstBeginTime.Hour == time.Hour)
            {
                if (FirstBeginTime.Minute > time.Minute)
                {
                    FirstBeginTime = time;
                }
            }
        }
        private static void SetEndTime(DateTime time, CM_BourseType type, Types.TradingTimeType timeType)
        {
            if (LastEndTime.Year == 2000)
            {
                LastEndTime = time;

                return;
            }

            if (LastEndTime.Hour < time.Hour)
            {
                LastEndTime = time;
                return;
            }

            if (LastEndTime.Hour == time.Hour)
            {
                if (LastEndTime.Minute < time.Minute)
                {
                    LastEndTime = time;
                }
            }
        }