From 285404b0f7161ceca8621e61026682bbbb3f71aa Mon Sep 17 00:00:00 2001
From: sunpengfei <i@angelzzz.com>
Date: 星期三, 10 九月 2025 14:23:31 +0800
Subject: [PATCH] feat:开发

---
 FlexJobApi.Core/Jobs/CompleteTaskSettlementT1Job.cs |   15 +++++++++------
 1 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/FlexJobApi.Core/Jobs/CompleteTaskSettlementT1Job.cs b/FlexJobApi.Core/Jobs/CompleteTaskSettlementT1Job.cs
index 2c9c5a5..79ebd00 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;
         }
 
@@ -333,13 +336,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