From c1bff84f284ee912a3db6b866be3916e1d762a90 Mon Sep 17 00:00:00 2001 From: sunpengfei <i@angelzzz.com> Date: 星期三, 13 八月 2025 13:07:48 +0800 Subject: [PATCH] feat:开发 --- FlexJobApi.FlexJobServer.Application/Tasks/Commands/TaskInfoCommandHandler.cs | 23 ++++++++++++++++++++++- 1 files changed, 22 insertions(+), 1 deletions(-) diff --git a/FlexJobApi.FlexJobServer.Application/Tasks/Commands/TaskInfoCommandHandler.cs b/FlexJobApi.FlexJobServer.Application/Tasks/Commands/TaskInfoCommandHandler.cs index 29b7036..0d67047 100644 --- a/FlexJobApi.FlexJobServer.Application/Tasks/Commands/TaskInfoCommandHandler.cs +++ b/FlexJobApi.FlexJobServer.Application/Tasks/Commands/TaskInfoCommandHandler.cs @@ -21,7 +21,8 @@ ) : IRequestHandler<SaveTaskInfoCommand, Guid>, IRequestHandler<SetTaskInfoReleaseStatusCommand, int>, - IRequestHandler<SetTaskInfoRecommendStatusCommand, int> + IRequestHandler<SetTaskInfoRecommendStatusCommand, int>, + IRequestHandler<DeleteTaskInfoCommand, int> { private readonly IRepository<TaskInfo> rep = rep; @@ -111,6 +112,26 @@ 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 => 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)}"; -- Gitblit v1.9.1