public IHttpActionResult UpdateJob(UpdateJobModel model)
        {
            bool success          = false;
            var  messsage         = "";
            var  userDetail       = context.UserDetails.Where(x => x.UserID == model.UserId).FirstOrDefault();
            var  featurePostOrder = context.Features.Where(x => x.UniqueCode == "POST_ORDER").FirstOrDefault();
            var  featureVal       = featurePostOrder.PlanDurationFeatures.FirstOrDefault();

            try
            {
                if (userDetail.BidPoints >= Convert.ToInt32(featureVal.FeatureValue))
                {
                    Util.SaveUserWallet(context, model.UserId, 0, "Post Order", 0, Convert.ToInt32(featureVal.FeatureValue), 0, PaymentStatus.Completed.ToString(), PaymentFromSite.QuiGig.ToString(), 0, 0, "Post Gig");
                    var jobDetail = context.Jobs.Where(x => x.ID == model.JobId && x.UserID == model.UserId).FirstOrDefault();
                    if (jobDetail != null)
                    {
                        jobDetail.IsActive  = true;
                        jobDetail.IsDelete  = false;
                        jobDetail.IsPublish = true;
                        context.SaveChanges();
                        success  = true;
                        messsage = "Save successfully.";
                    }
                }
            }
            catch (Exception ex)
            {
                messsage = ex.Message;
            }
            return(Ok(new
            {
                Success = success,
                Message = messsage
            }));
        }
        public IActionResult Put(string id, [FromBody] UpdateJobModel jobModel)
        {
            // only cancelled is supported for now.
            if (jobModel.Status != DeploymentJobStatus.CANCELLED)
            {
                var error = new ErrorModel(
                    "JobStatusNotSupported",
                    $"Status ${jobModel.Status} is currently not supported for job updates.",
                    HttpStatusCode.BadRequest); // ?? 422 Unprocessable Entity

                return(BadRequest(error));
            }

            _deploymentService.CancelJob(id);
            return(Ok());
        }
        public IActionResult GetUpdateJobView(string jobName, string group)
        {
            UpdateJobModel model = new UpdateJobModel();

            model.JobName       = jobName;
            model.JobGroupValue = group;

            var data = XmlJobManage.GetJobDataByKey(new JobKey(jobName, group));

            if (data != null)
            {
                model.CronExpression = data.CronExpression;
                model.CallbackUrl    = data.CallbackUrl;
            }

            return(PartialView("UpdateJobView", model));
        }
Beispiel #4
0
        public async Task <ActionResult> Put(Guid jobId, [FromBody] UpdateJobModel job)
        {
            ActionResult actionResult = null;

            switch (job.JobStatus)
            {
            case JobStatusType.Created:
            case JobStatusType.Started:
                actionResult = BadRequest(new
                {
                    job.JobStatus,
                    JobStatus_Error = $"You can only set this property to {Enum.GetName(typeof(JobStatusType), JobStatusType.FinishedQueueing)} or {Enum.GetName(typeof(JobStatusType), JobStatusType.Restart)}"
                });
                break;

            case JobStatusType.FinishedQueueing:
                await messageSession.Send(new UserFinishedQueueingJobMessage
                {
                    JobId = jobId,
                    ActionTookPlaceDate = DateTimeOffset.UtcNow
                });

                actionResult = Created($"/api/automaton/jobs/{jobId}", job);
                break;

            case JobStatusType.Restart:
                await messageSession.Send(new UserRestartedJobMessage
                {
                    JobId = jobId,
                    DateActionTookPlace = DateTimeOffset.UtcNow
                });

                actionResult = Created($"/api/automaton/jobs/{jobId}", job);
                break;

            default:
                actionResult = NotFound();
                break;
            }

            return(actionResult);
        }
        public JsonResult ModifyJob(UpdateJobModel model)
        {
            JobParamHttpModel jobParam = new JobParamHttpModel();

            jobParam.JobName        = model.JobName;
            jobParam.CronExpression = model.CronExpression;
            jobParam.CallbackUrl    = model.CallbackUrl;
            jobParam.CallbackParams = GetParaDict(model.CallbackParams);

            bool bl = _job.UpdateHttpJob(jobParam);

            if (bl)
            {
                return(BaseJson(MsgCode.Success, "修改成功"));
            }
            else
            {
                return(BaseJson(MsgCode.Failed, "修改失败"));
            }
        }