예제 #1
0
        private JobSchedule GetSchedule()
        {
            JobSchedule schedule;

            if (this.PageEditMode == PageMode.Create)
            {
                TimeFrequencyBase        timeFrequency        = GetTimeFrequency();
                JobScheduleFrequencyBase jobScheduleFrequency = GetJobScheduleFrequency();

                schedule = new JobSchedule(Guid.NewGuid().ToString(),
                                           txtScheduleName.Text, durationStartDate.Value, jobScheduleFrequency)
                {
                    Enabled = chbEnabled.Checked
                };
            }
            else
            {
                schedule                   = JobScheduleAdapter.Instance.Load(p => p.AppendItem("SCHEDULE_ID", this.ScheduleID))[0];
                schedule.Name              = txtScheduleName.Text;
                schedule.Enabled           = chbEnabled.Checked;
                schedule.StartTime         = durationStartDate.Value;
                schedule.ScheduleFrequency = GetJobScheduleFrequency();
            }

            if (radioEndDate.Checked && durationEndDate.Value != null)
            {
                schedule.EndTime = durationEndDate.Value;
            }
            else
            {
                schedule.EndTime = null;
            }

            return(schedule);
        }
예제 #2
0
        private JobScheduleFrequencyBase GetJobScheduleFrequency()
        {
            JobScheduleFrequencyBase jobScheduleFrequency = null;
            var    timeFrequency = GetTimeFrequency();
            string frequencyType = this.ddlFrequency.Items[ddlFrequency.SelectedIndex].Value;

            switch (frequencyType)
            {
            case "daily":
                int dayCount = int.Parse(txtRecurDay.Value);
                jobScheduleFrequency = new DailyJobScheduleFrequency(dayCount, timeFrequency);
                break;

            case "weekly":
                List <DayOfWeek> weekdays = GetSelectedWeekday();
                jobScheduleFrequency = new WeeklyJobScheduleFrequency(weekdays, int.Parse(txtWeek.Value), timeFrequency);
                break;

            case "monthly":
                int days   = int.Parse(this.txtDayOfWeek.Value);
                int months = int.Parse(this.txtMonthCount.Value);
                jobScheduleFrequency = new MonthlyJobScheduleFrequency(days, months, timeFrequency);
                break;

            default:
                break;
            }
            //jobScheduleFrequency.LastModifyTime = DateTime.Now;

            return(jobScheduleFrequency);
        }
예제 #3
0
        private static JobSchedule CreateSchedule()
        {
            string   scheduleID   = Guid.NewGuid().ToString();
            string   scheduleName = "计划名称" + DateTime.Now.ToString();
            DateTime sTime        = DateTime.Now.AddMonths(-1);
            DateTime eTime        = DateTime.Now.AddMonths(1);

            TimeFrequencyBase        timeFre = CreateTimeFrequency();
            JobScheduleFrequencyBase schFre  = CreateSchFrequency(timeFre);

            JobSchedule schedule = new JobSchedule(scheduleID, scheduleName,
                                                   sTime, eTime, schFre);

            return(schedule);
        }