Beispiel #1
0
        /// <summary>
        /// 获取任务列表
        /// </summary>
        /// <param name="isFirstLoad">是否是第一次加载</param>
        /// <returns></returns>
        public List <Entity.AutoTask> GetTaskList(bool isFirstLoad)
        {
            Dal.AutoTask           dalAutoTask = new Dal.AutoTask();
            List <Entity.AutoTask> list        = dalAutoTask.GetList(" 1=1 ", null, " CreateDate DESC"); //Helper.GetTaskList(_xml);//任务列表

            if (isFirstLoad)
            {
                List <Entity.AutoTask> listTmp = list.Where(m => m.TaskType == "5").ToList <Entity.AutoTask>();//锁屏任务 下次启动时间从打开软件算起
                if (listTmp.Count > 0)
                {
                    foreach (Entity.AutoTask m in listTmp)
                    {
                        m.NextStartDate = Convert.ToDateTime(Task.Instance.GetNextStartDate(Int32.Parse(m.TimeType), m.Dayth, m.Interval));
                        dalAutoTask.Update(m, " Id=" + m.Id);
                    }
                }
                listTmp = list.Where(m => m.TaskType == "2").ToList <Entity.AutoTask>();//关机任务 日期换成当前年月日
                if (listTmp.Count > 0)
                {
                    foreach (Entity.AutoTask m in listTmp)
                    {
                        string nextDate = ((DateTime)m.NextStartDate).ToString("yyyy-MM-dd");
                        m.NextStartDate = Convert.ToDateTime(
                            ((DateTime)m.NextStartDate).ToString("yyyy-MM-dd HH:mm:00").Replace(nextDate, DateTime.Now.ToString("yyyy-MM-dd"))
                            );
                        dalAutoTask.Update(m, " Id=" + m.Id);
                    }
                }
            }
            return(list);
        }
Beispiel #2
0
        //保存
        private void btnOK_Click(object sender, RoutedEventArgs e)
        {
            string path = this.txtPath.Text.Trim();
            string title = this.txtTitle.Text.Trim();
            string remark = this.txtRemark.Text.Trim();
            string startParameter = this.txtStartParameter.Text.Trim();
            string startDate = "", stopDate = "", nextStartDate = "";//起始 停止 下次启动时间

            if (this.rbtMonth.IsChecked == true)
            {
                _timeType = TimeType.Month;
            }
            if (this.rbtDay.IsChecked == true)
            {
                _timeType = TimeType.Day;
            }
            if (this.rbtHour.IsChecked == true)
            {
                _timeType = TimeType.Hour;
            }
            if (this.rbtMinute.IsChecked == true)
            {
                _timeType = TimeType.Minute;
            }
            if (this.rbtOnce.IsChecked == true)
            {
                _timeType = TimeType.Once;
            }

            AutoTask model = new AutoTask();

            try
            {
                bool flag = ID == 0 ? true : false;//是否是新增

                if (this.cboTaskType.SelectedIndex == 0)
                {
                    if (path.Length == 0 || !path.EndsWith(".exe"))
                    {
                        _statusText = "不是可执行文件或文件路径不能为空!";
                        return;
                    }
                }
                startDate     = this.dp_StartDate.Text + " " + ((DateTime)this.dp_StartTime.Value).ToString("HH:mm:00");
                stopDate      = this.dp_StopDate.Text + " " + Convert.ToDateTime(this.dp_StopTime.Value).ToString("HH:mm:00");
                nextStartDate = GetFirstStartDate();

                model.StartParameters = startParameter;
                model.ApplicationPath = path;
                model.Title           = title;
                model.Enable          = (bool)this.cboEnable.IsChecked ? "1" : "0";
                model.StartDate       = Convert.ToDateTime(startDate);
                model.StopDate        = Convert.ToDateTime(stopDate);
                model.Remark          = remark;
                model.AudioPath       = this._audio;
                model.TaskType        = this.cboTaskType.SelectedIndex.ToString();
                model.Status          = "";
                model.TimeType        = ((int)_timeType).ToString();
                model.Interval        = (this.rbtMinute.IsChecked == true) ? Convert.ToInt32(this.cboMinute.SelectedValue.ToString()) : 0;
                model.Dayth           = (this.rbtMonth.IsChecked == true) ? Convert.ToInt32(this.cboDay.SelectedValue.ToString()) : 0;
                model.NextStartDate   = Convert.ToDateTime(nextStartDate);

                if (!flag)//修改
                {
                    dalAutoTask.Update(model, " Id=" + ID);
                    _statusText = "保存设置成功!";
                }
                else//新增
                {
                    TimedTask.Dal.AutoTask dalTask = new Dal.AutoTask();
                    dalTask.Add(model);

                    _statusText = "新增成功!";
                }
            }
            catch (Exception ex)
            {
                _statusText = "保存设置失败,可能原因是:未找到指定的配置文件!";
                Log.SaveLog("TaskDetail btnOK_Click", _statusText + ex.ToString());
            }
        }