From 56af0f468f321d41db70343abf558d61cda58d31 Mon Sep 17 00:00:00 2001 From: sunpengfei <i@angelzzz.com> Date: 星期五, 05 九月 2025 15:40:20 +0800 Subject: [PATCH] feat:开发 --- FlexJobApi.FlexJobServer.Application/Tasks/Commands/TaskInfoCommandHandler.cs | 14 +++++++++++++- 1 files changed, 13 insertions(+), 1 deletions(-) diff --git a/FlexJobApi.FlexJobServer.Application/Tasks/Commands/TaskInfoCommandHandler.cs b/FlexJobApi.FlexJobServer.Application/Tasks/Commands/TaskInfoCommandHandler.cs index 2cf94cf..3ee158a 100644 --- a/FlexJobApi.FlexJobServer.Application/Tasks/Commands/TaskInfoCommandHandler.cs +++ b/FlexJobApi.FlexJobServer.Application/Tasks/Commands/TaskInfoCommandHandler.cs @@ -158,7 +158,7 @@ public async Task<Guid> Handle(SureTaskSettlementOrderCommand request, CancellationToken cancellationToken) { var entity = await TaskInfoRepository.GetQueryable(rep, false) - .Include(it => it.TaskInfoUsers) + .Include(it => it.TaskInfoUsers).ThenInclude(it => it.EnterpriseEmployee) .Where(it => it.Id == request.TaskInfoId) .FirstOrDefaultAsync(); if (entity == null) throw Oops.Oh(EnumErrorCodeType.s404, "浠诲姟"); @@ -167,6 +167,7 @@ entity.SettlementOrderStatus = EnumTaskSettlementOrderStatus.Completed; entity.SettlementOrderUrl = request.SettlementOrderUrl; entity.SettlementOrderName = entity.SettlementOrderUrl.Substring(entity.SettlementOrderUrl.LastIndexOf("/") + 1); + entity.SettlementOrderTime = DateTime.Now; entity.SettlementStatus = EnumTaskSettlementStatus.Wait; entity.SettlementUserCount = request.TaskInfoUsers.Count; entity.SettlementAmount = request.TaskInfoUsers.Sum(it => it.SettlementAmount ?? 0); @@ -183,11 +184,22 @@ if (model.ActualSettlementAmount > 0 && model.ActualSettlementAmount < 1) throw Oops.Oh(EnumErrorCodeType.s510, $"{model.Name}瀹炲彂閲戦涓嶅彲灏忎簬1鍏�"); user.Bank = model.Bank; user.BankBranch = model.BankBranch; + user.ReceiveName = user.EnterpriseEmployee.Name; user.ReceiveAccount = model.ReceiveAccount; user.SettlementAmount = model.SettlementAmount; user.ActualSettlementAmount = model.ActualSettlementAmount; user.SettlementStatus = EnumTaskSettlementStatus.Wait; } + + foreach (var user in entity.TaskInfoUsers) + { + var model = request.TaskInfoUsers.FirstOrDefault(it => it.Id == user.Id); + if (model == null) + { + user.SettlementStatus = null; + } + } + await rep.UpdateAsync(entity); return entity.Id; } -- Gitblit v1.9.1