public async Task <ActionResult> Execute(string code) { if (HttpContext.User.Identity.IsAuthenticated) { var result = await _executeService.Execute(code, HttpContext.User.Identity.Name); return(Json(new { condition = result.Item1.ToString(), output = result.Item2 })); } var cookie = Request.Cookies[cookieName]; if (cookie != null) { byte[] data = Convert.FromBase64String(cookie["id"]); int id = _encryptService.Decrypt(data); var result = await _executeService.Execute(code, id); return(Json(new { condition = result.Item1.ToString(), output = result.Item2 })); } else { int id = _executeService.GetNewId(); byte[] data = _encryptService.Encrypt(id); var responceCookie = new HttpCookie(cookieName) { Expires = DateTime.Now.AddMinutes(cookieMinutes) }; responceCookie.Values.Add("id", Convert.ToBase64String(data)); Response.Cookies.Add(responceCookie); var result = await _executeService.Execute(code, id); return(Json(new { condition = result.Item1.ToString(), output = result.Item2 })); } }
/// <summary> /// 手动执行任务 /// </summary> /// <param name="id"></param> /// <returns></returns> public IActionResult ExecuteScheduleTask(int id) { if (!_permissionService.Authorize("ExecuteScheduleTask")) { return(Error("无操作权限!")); } var scheduleTask = _scheduleTaskService.GetScheduleById(id); try { //BackgroundJob.Enqueue<ExecuteService>(a => a.Execute(scheduleTask.Functions, scheduleTask.Type)); _executeService.Execute(scheduleTask.Functions, scheduleTask.Type); return(Success()); } catch (Exception) { return(Error("执行失败")); } }
public Task <MetricStatus> Execute(ExecuteCommand executeCommand) => _executeService.Execute(executeCommand);