Beispiel #1
0
        /// <summary>
        /// 不使用
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public async Task <BaseResponse> CronJobUpdate(CronJobUpdateRequest request)
        {
            ////直接全更新,否可行。
            ////生产语句UPDATE `cron_job` SET `CreateTime` = @p0, `CreateUser` = @p1, `CronExpress` = @p2, `Description` = @p3, `JobState` = @p4, `Name` = @p5, `RequestUrl` = @p6, `UpdateTime` = @p7, `UpdateUser` = @p8 WHERE `Id` = @p9;
            //_cronJobRepository.Update(request.CronJob);
            //await _cronJobRepository.SaveChangesAsync();

            var nameJob = await _cronJobRepository.FirstOrDefaultAsync(c => c.Id == request.CronJob.Id);

            if (nameJob == null)
            {
                return(BaseResponse.Failed("未找到对应任务"));
            }

            //排除固定字段的更新  只更新指定改动的字段
            _cronJobRepository.CompareValueAndassign(nameJob, request.CronJob);
            nameJob.UpdateUser = request.UserId;

            await _cronJobRepository.SaveChangesAsync();

            return(BaseResponse <CronJob> .Ok(nameJob));
        }