| | |
| | | ) : |
| | | IRequestHandler<SaveTaskInfoCommand, Guid>, |
| | | IRequestHandler<SetTaskInfoReleaseStatusCommand, int>, |
| | | IRequestHandler<SetTaskInfoRecommendStatusCommand, int> |
| | | IRequestHandler<SetTaskInfoRecommendStatusCommand, int>, |
| | | IRequestHandler<DeleteTaskInfoCommand, int> |
| | | { |
| | | private readonly IRepository<TaskInfo> rep = rep; |
| | | |
| | |
| | | return entities.Count; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 删除任务 |
| | | /// </summary> |
| | | /// <param name="request"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | public Task<int> Handle(DeleteTaskInfoCommand request, CancellationToken cancellationToken) |
| | | { |
| | | return request.DeleteData<TaskInfo>( |
| | | q => |
| | | { |
| | | q = TaskInfoRepository.GetQueryable(rep, false); |
| | | if (q.AsNoTracking().Any(it => request.Ids.Contains(it.Id) && it.Status == EnumTaskStatus.Complete)) |
| | | { |
| | | throw Oops.Oh(EnumErrorCodeType.s510, "已安排的任务无法删除"); |
| | | } |
| | | return q; |
| | | }, cancellationToken); |
| | | } |
| | | |
| | | private async Task BuildCode(TaskInfo entity) |
| | | { |
| | | entity.Code = $"{DateTime.Now:yyyyMMddHHmm}{new Random(IDGen.NextID().GetHashCode()).Next(1000, 9999)}"; |