private bool IsSameWeekDay(DayOfWeek dayOfWeek, Base.Data.EWeekDay weekDay)
        {
            Base.Data.EWeekDay targetWeekDay;
            switch (dayOfWeek)
            {
            case DayOfWeek.Friday:
                targetWeekDay = EWeekDay.Friday;
                break;

            case DayOfWeek.Monday:
                targetWeekDay = EWeekDay.Monday;
                break;

            case DayOfWeek.Saturday:
                targetWeekDay = EWeekDay.Saturday;
                break;

            case DayOfWeek.Sunday:
                targetWeekDay = EWeekDay.Sunday;
                break;

            case DayOfWeek.Thursday:
                targetWeekDay = EWeekDay.Thursday;
                break;

            case DayOfWeek.Tuesday:
                targetWeekDay = EWeekDay.Tuesday;
                break;

            case DayOfWeek.Wednesday:
                targetWeekDay = EWeekDay.Wednesday;
                break;

            default:
                throw new NotImplementedException();
            }
            bool result = (weekDay & targetWeekDay) == targetWeekDay;

            return(result);
        }
Пример #2
0
        private void FormTaskData_Load(object sender, EventArgs e)
        {
            this.SetAppIcon();
            chkEnabled.Checked        = TaskData.IsEnabled;
            chkNotifyProgress.Checked = TaskData.NotifyProgressOutput;
            txtName.Text        = TaskData.Name;
            txtDescription.Text = TaskData.Description;

            txtCommand.Text           = TaskData.ActioningData.Command;
            txtCommandArguments.Text  = TaskData.ActioningData.Parameters;
            txtStartIn.Text           = TaskData.ActioningData.StartIn;
            chkRunAsOtherUser.Checked = TaskData.ActioningData.RunAsOther;
            txtDomainName.Text        = TaskData.ActioningData.Domain;
            txtUserName.Text          = TaskData.ActioningData.UserName;
            txtPassword.Text          = TaskData.ActioningData.Password;
            grpOtherUser.Enabled      = TaskData.ActioningData.RunAsOther;
            nudHours.Value            = 1m * TaskData.ActioningData.StopIfIdleHours;
            nudMinutes.Value          = 1m * TaskData.ActioningData.StopIfIdleMinutes;
            nudSeconds.Value          = 1m * TaskData.ActioningData.StopIfIdleSeconds;

            dtpStartDate.Value   = TaskData.SchedulingData.StartDateTime;
            dtpStartTime.Value   = TaskData.SchedulingData.StartDateTime;
            dtpExpiryDate.Value  = TaskData.SchedulingData.ExpiryDateTime;
            dtpExpiryTime.Value  = TaskData.SchedulingData.ExpiryDateTime;
            nudDaysBetween.Value = TaskData.SchedulingData.DaysBetweenRepetitions;
            Base.Data.EWeekDay weekDay = TaskData.SchedulingData.WeeksDays;
            if ((weekDay & Base.Data.EWeekDay.Monday) == Base.Data.EWeekDay.Monday)
            {
                chklWeekDays.SetItemChecked(0, true);
            }
            if ((weekDay & Base.Data.EWeekDay.Tuesday) == Base.Data.EWeekDay.Tuesday)
            {
                chklWeekDays.SetItemChecked(1, true);
            }
            if ((weekDay & Base.Data.EWeekDay.Wednesday) == Base.Data.EWeekDay.Wednesday)
            {
                chklWeekDays.SetItemChecked(2, true);
            }
            if ((weekDay & Base.Data.EWeekDay.Thursday) == Base.Data.EWeekDay.Thursday)
            {
                chklWeekDays.SetItemChecked(3, true);
            }
            if ((weekDay & Base.Data.EWeekDay.Friday) == Base.Data.EWeekDay.Friday)
            {
                chklWeekDays.SetItemChecked(4, true);
            }
            if ((weekDay & Base.Data.EWeekDay.Saturday) == Base.Data.EWeekDay.Saturday)
            {
                chklWeekDays.SetItemChecked(5, true);
            }
            if ((weekDay & Base.Data.EWeekDay.Sunday) == Base.Data.EWeekDay.Sunday)
            {
                chklWeekDays.SetItemChecked(6, true);
            }
            cbostartType.Items.Add("Run once");
            cbostartType.Items.Add("Run once every few days");
            cbostartType.Items.Add("Weekly plan");
            switch (TaskData.SchedulingData.ScheduleType)
            {
            case Base.Data.EScheduleType.RunOnce:
                cbostartType.SelectedItem = "Run once";
                break;

            case Base.Data.EScheduleType.OnceEveryFewDays:
                cbostartType.SelectedItem = "Run once every few days";
                break;

            case Base.Data.EScheduleType.WeeklyBase:
                cbostartType.SelectedItem = "Weekly plan";
                break;

            default:
                throw new NotImplementedException();
            }
        }
Пример #3
0
        private void BtnOk_Click(object sender, EventArgs e)
        {
            TaskData.IsEnabled            = chkEnabled.Checked;
            TaskData.NotifyProgressOutput = chkNotifyProgress.Checked;
            TaskData.Name        = txtName.Text;
            TaskData.Description = txtDescription.Text;

            TaskData.ActioningData.Command    = txtCommand.Text;
            TaskData.ActioningData.Parameters = txtCommandArguments.Text;
            TaskData.ActioningData.StartIn    = txtStartIn.Text;
            TaskData.ActioningData.RunAsOther = chkRunAsOtherUser.Checked;
            if (TaskData.ActioningData.RunAsOther)
            {
                TaskData.ActioningData.Domain   = txtDomainName.Text;
                TaskData.ActioningData.UserName = txtUserName.Text;
                TaskData.ActioningData.Password = txtPassword.Text;
            }
            else
            {
                TaskData.ActioningData.Domain   = null;
                TaskData.ActioningData.UserName = null;
                TaskData.ActioningData.Password = null;
            }
            TaskData.ActioningData.StopIfIdleHours   = (int)nudHours.Value;
            TaskData.ActioningData.StopIfIdleMinutes = (int)nudMinutes.Value;
            TaskData.ActioningData.StopIfIdleSeconds = (int)nudSeconds.Value;

            TaskData.SchedulingData.StartDateTime = new DateTime(dtpStartDate.Value.Year, dtpStartDate.Value.Month, dtpStartDate.Value.Day,
                                                                 dtpStartTime.Value.Hour, dtpStartTime.Value.Minute, dtpStartTime.Value.Second, 0);
            TaskData.SchedulingData.ExpiryDateTime = new DateTime(dtpExpiryDate.Value.Year, dtpExpiryDate.Value.Month, dtpExpiryDate.Value.Day,
                                                                  dtpExpiryTime.Value.Hour, dtpExpiryTime.Value.Minute, dtpExpiryTime.Value.Second, 0);
            TaskData.SchedulingData.DaysBetweenRepetitions = (int)nudDaysBetween.Value;
            string selectedItem = (string)cbostartType.SelectedItem;

            switch (selectedItem)
            {
            case "Run once":
                TaskData.SchedulingData.ScheduleType = Base.Data.EScheduleType.RunOnce;
                break;

            case "Run once every few days":
                TaskData.SchedulingData.ScheduleType = Base.Data.EScheduleType.OnceEveryFewDays;
                break;

            case "Weekly plan":
                TaskData.SchedulingData.ScheduleType = Base.Data.EScheduleType.WeeklyBase;
                break;

            default:
                throw new NotImplementedException();
            }
            Base.Data.EWeekDay weekDay = Base.Data.EWeekDay.None;
            if (chklWeekDays.GetItemChecked(0))
            {
                weekDay |= Base.Data.EWeekDay.Monday;
            }
            if (chklWeekDays.GetItemChecked(1))
            {
                weekDay |= Base.Data.EWeekDay.Tuesday;
            }
            if (chklWeekDays.GetItemChecked(2))
            {
                weekDay |= Base.Data.EWeekDay.Wednesday;
            }
            if (chklWeekDays.GetItemChecked(3))
            {
                weekDay |= Base.Data.EWeekDay.Thursday;
            }
            if (chklWeekDays.GetItemChecked(4))
            {
                weekDay |= Base.Data.EWeekDay.Friday;
            }
            if (chklWeekDays.GetItemChecked(5))
            {
                weekDay |= Base.Data.EWeekDay.Saturday;
            }
            if (chklWeekDays.GetItemChecked(6))
            {
                weekDay |= Base.Data.EWeekDay.Sunday;
            }
            TaskData.SchedulingData.WeeksDays = weekDay;
        }