Beispiel #1
0
        public async Task <BaseResponse> CronJobAdd(CronJobAddRequest request)
        {
            //查看是否有同名定时任务
            var nameJob = await _cronJobRepository.FirstOrDefaultAsync(c => c.Name == request.Name);

            if (nameJob != null)
            {
                return(BaseResponse.Failed("已有同名任务"));
            }
            var cronJob = _mapper.Map <CronJob>(request);

            cronJob.CreateTime = DateTime.Now;
            cronJob.UpdateTime = DateTime.Now;
            cronJob.JobState   = JobStateEnum.启用;

            await _cronJobRepository.InsertAsync(cronJob);

            await _cronJobRepository.SaveChangesAsync();

            if (_jobCronTrigger.RunJob(cronJob))
            {
                return(BaseResponse <CronJob> .Ok(cronJob));
            }
            return(BaseResponse.Failed());
        }