Exemple #1
0
        /// <summary>
        /// 强制执行一次任务,不改变任务状态
        /// </summary>
        /// <param name="scheID"></param>
        public void ExecuteNow(int scheID)
        {
            M_Content_ScheTask taskMod = scheBll.SelReturnModel(scheID);

            switch (taskMod.TaskType)
            {
            case (int)M_Content_ScheTask.TaskTypeEnum.ExecuteSQL:
            {
                if (taskMod.TaskContent.StartsWith("/"))         //若以'/'或'\'开头则为脚本
                {
                    DBHelper.ExecuteSqlScript(DBCenter.DB.ConnectionString, function.VToP(taskMod.TaskContent));
                }
                else
                {
                    SqlHelper.ExecuteSql(taskMod.TaskContent);
                }
            }
            break;

            //case (int)M_Content_ScheTask.TaskTypeEnum.Release:
            //    break;
            case (int)M_Content_ScheTask.TaskTypeEnum.Content:
            {
                conBll.UpdateStatus(taskMod.TaskContent, 99);
                scheBll.UpdateStatus(taskMod.ID.ToString(), 100);
            }
            break;
            }
            //增加一条日志
            taskMod.LastTime = DateTime.Now.ToString();
            DBCenter.UpdateSQL(taskMod.TbName, "LastTime='" + DateTime.Now + "'", "ID=" + taskMod.ID);
            B_Content_ScheLog logBll = new B_Content_ScheLog();
            M_Content_ScheLog logMod = new M_Content_ScheLog();

            logMod.TaskID   = taskMod.ID;
            logMod.TaskName = taskMod.TaskName;
            logMod.Result   = 1;
            logBll.Insert(logMod);
        }