/// <summary> /// 新增任务 /// </summary> /// <param name="taskRequestData">新增的数据</param> /// <param name="page"></param> /// <returns></returns> public async Task <ResponseData> AddTask(TaskRequestData taskRequestData, Page page) { if (!helperFunction.CheckForNull(taskRequestData)) { string Message = "任务名字 和 任务类型 和 业务类型 和 预定时间 不能为空"; return(new ResponseData(Message, "", StatusCode.Fail)); } var taskData = mapper.Map <TaskData>(taskRequestData); var NameIsExists = Db.SingleOrDefault <TaskData>("where Task_Name = @0", taskData.Task_Name); var TimeSpanDate = Convert.ToDateTime(taskRequestData.Task_PresetTime) - DateTime.Now; if (NameIsExists != null) { return(new ResponseData("任务名,已存在", "", StatusCode.Fail)); } if (Convert.ToInt32(TimeSpanDate.Seconds) < 0) { return(new ResponseData("执行时间 必须大于 当前时间", "", StatusCode.Fail)); } switch (taskData.Task_TaskType) { // 添加一次性任务 case "OneOff": taskData.Task_CreateTime = DateTime.Now.ToString("F"); taskData.Task_PresetTime = DateTime.Now.ToString("F"); taskData.Task_ExecuteReuslt = 0; taskData.Task_Isexists = 1; await Db.InsertAsync(taskData); await formalBusiness.AddOneOffTask(taskData); return(new ResponseData("增加一次性任务成功", await Db.PageAsync <TaskData>(page.PageNumber, page.PageSize, "where Task_Isexists = 1"), StatusCode.Success)); // 添加定时任务 case "TimedTask": if (string.IsNullOrEmpty(taskData.Task_PresetTime)) { return(new ResponseData("增加任务失败,必须指定执行时间", "", StatusCode.Success)); } var dateTimeMap = await formalBusiness.AddTimedTask(taskData); taskData.Task_CreateTime = DateTime.Now.ToString("F"); var TimeDifference = (dateTimeMap.ExDateTime - DateTime.Now).TotalSeconds; //taskData.Task_IntervalTime = helperFunction.CheckDateTime(TimeDifference); taskData.Task_ExecuteReuslt = 0; taskData.Task_Isexists = 1; await Db.InsertAsync(taskData); return(new ResponseData("增加定时任务成功", await Db.PageAsync <TaskData>(page.PageNumber, page.PageSize, "where Task_Isexists = 1"), StatusCode.Success)); default: return(new ResponseData("增加任务失败,请明确任务类型", "", StatusCode.Success)); } }
/// <summary> /// 创建定时任务 /// </summary> /// <returns></returns> public async Task <ResultDTO> StartTask() { var requestDateTime = DateTime.Now.ToString("F"); var NewMaxId = MaxId + 1; RecurringJob.AddOrUpdate(NewMaxId.ToString(), () => RecurrJobj(), "0 30 12 * * ?", TimeZoneInfo.Local); var hangfireLog = new HangfireLogger(NewMaxId, 0, NewMaxId.ToString(), "", "Recurring jobs", TaskStatusCode.Success, requestDateTime, "12:00:00"); await Db.InsertAsync(hangfireLog); return(new ResultDTO(200, "请求成功,任务已开启", ResultStatus.Suceess)); }
public async Task <object> Add(Office office) { return(await db.InsertAsync(office)); }
public async Task <object> Add(Department department) { return(await db.InsertAsync(department)); }
public async Task <object> Add(Employee employee) { return(await db.InsertAsync(employee)); }
public async Task <object> Add(JobTitle jobTitle) { return(await db.InsertAsync(jobTitle)); }