From 20af9888642273b5ff389f1fd8e80582083ef0b5 Mon Sep 17 00:00:00 2001 From: sunpengfei <i@angelzzz.com> Date: 星期四, 11 九月 2025 15:52:17 +0800 Subject: [PATCH] feat:开发 --- FlexJobApi.FlexJobServer.Application/Tasks/Commands/TaskInfoCommandHandler.cs | 17 +++++++++++++++-- 1 files changed, 15 insertions(+), 2 deletions(-) diff --git a/FlexJobApi.FlexJobServer.Application/Tasks/Commands/TaskInfoCommandHandler.cs b/FlexJobApi.FlexJobServer.Application/Tasks/Commands/TaskInfoCommandHandler.cs index 2cf94cf..3f4bfdd 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; } @@ -237,6 +249,7 @@ if (entity.SettlementStatus == null) throw Oops.Oh(EnumErrorCodeType.s510, "鏈紑濮嬬粨绠楋紝璇峰厛涓婁紶缁撶畻鍗曞苟纭"); if (entity.SettlementStatus == EnumTaskSettlementStatus.Completed) throw Oops.Oh(EnumErrorCodeType.s510, "宸茬粨绠�"); entity.SettlementStatus = EnumTaskSettlementStatus.InProcess; + entity.SettlementOperatorUserId = logier.Id; entity.SettlementStartTime = DateTime.Now; foreach (var user in entity.TaskInfoUsers) { @@ -250,7 +263,7 @@ .FirstOrDefaultAsync(); if (wallet == null) throw Oops.Oh(EnumErrorCodeType.s404, "浼佷笟閽卞寘"); if (wallet.SignStatus != EnumEnterpriseWalletSignStatus.Normal) throw Oops.Oh(EnumErrorCodeType.s404, "浼佷笟閽卞寘鏈绾�"); - if (wallet.AccountBookStatus != EnumEnterpriseWalletAccountBookStatus.Normal) throw Oops.Oh(EnumErrorCodeType.s404, "浼佷笟閽卞寘璁拌处鏈湭寮�閫�"); + if (wallet.AccountBookStatus != EnumEnterpriseWalletAccountBookStatus.Normal) throw Oops.Oh(EnumErrorCodeType.s510, "浼佷笟閽卞寘璁拌处鏈湭寮�閫�"); var response = alipayUtils.FundAccountbookQuery(new AlipayFundAccountbookQueryModel { AccountBookId = wallet.AccountBookId, -- Gitblit v1.9.1