From 5c45bc53e2c18e45130c21048df4af4896455c6d Mon Sep 17 00:00:00 2001 From: sunpengfei <i@angelzzz.com> Date: 星期五, 12 九月 2025 15:58:48 +0800 Subject: [PATCH] feat:开发 --- FlexJobApi.Core/Jobs/CompleteTaskSettlementT1Job.cs | 19 +++++++++++++------ 1 files changed, 13 insertions(+), 6 deletions(-) diff --git a/FlexJobApi.Core/Jobs/CompleteTaskSettlementT1Job.cs b/FlexJobApi.Core/Jobs/CompleteTaskSettlementT1Job.cs index 2c9c5a5..01e4698 100644 --- a/FlexJobApi.Core/Jobs/CompleteTaskSettlementT1Job.cs +++ b/FlexJobApi.Core/Jobs/CompleteTaskSettlementT1Job.cs @@ -43,7 +43,7 @@ var env = App.GetConfig<string>("Environment"); if (env != "Local") { - var tasks = await GetTasks(env); + var tasks = await GetTasks(); var enterpriseIds = tasks.DistinctSelect(it => it.EnterpriseId); var taskIds = tasks.DistinctSelect(it => it.Id); var taskUsers = await GetTaskUsers(taskIds); @@ -89,6 +89,8 @@ /// <returns></returns> private async Task UpdateUserWalletTransactionWithdraw(UserWallet wallet, UserWalletTransaction withdraw, EnterpriseWalletTransaction transfer) { + withdraw.ErrorCode = transfer.ErrorCode; + withdraw.FailReason = transfer.FailReason; withdraw.EnterpriseWalletTransactionId = transfer.Id; withdraw.TransactionStatus = transfer.TransactionStatus; withdraw.TransDate = transfer.TransDate; @@ -129,9 +131,6 @@ /// <returns></returns> private async Task<UserWalletTransaction> AddUserWalletTransactionWithdraw(UserWallet wallet, TaskInfo task, TaskInfoUser user) { - wallet.Balance -= user.ActualSettlementAmount ?? 0; - await repUserWallet.UpdateNowAsync(wallet); - var order = new UserWalletTransaction(); order.WalletId = wallet.Id; order.Type = EnumUserWalletTransactionType.Withdraw; @@ -147,6 +146,10 @@ order.TransactionStatus = EnumWalletTransactionStatus.Dealing; await SetCode(order); await repUserWalletTransaction.InsertNowAsync(order); + + wallet.Balance -= user.ActualSettlementAmount ?? 0; + await repUserWallet.UpdateNowAsync(wallet); + return order; } @@ -304,6 +307,10 @@ AccountBookId = wallet.AccountBookId, SceneCode = "SATF_FUND_BOOK", MerchantUserId = wallet.Code, + ExtInfo = new + { + agreement_no = wallet.AgreementNo + }.ToJson() }); if (response.IsError) throw Oops.Oh(EnumErrorCodeType.s510, response.SubMsg ?? response.Msg); wallet.Balance = response.AvailableAmount.ToDecimal() ?? 0; @@ -333,13 +340,13 @@ /// </summary> /// <param name="env"></param> /// <returns></returns> - private async Task<List<TaskInfo>> GetTasks(string env) + private async Task<List<TaskInfo>> GetTasks() { var now = DateTime.Now; var q = rep.AsQueryable() .Include(it => it.Enterprise) .Where(it => it.SettlementStatus == EnumTaskSettlementStatus.InProcess); - var minTime = env == "Test" + var minTime = App.GetConfig<string>("Task:SettlementTime") == "T0" ? now.AddMinutes(-5) : now.AddDays(-1); q = q.Where(it => it.SettlementStartTime.HasValue && it.SettlementStartTime < minTime); -- Gitblit v1.9.1