From 446957fb241cd6489576281c28050062aa6df073 Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期三, 25 九月 2024 14:56:11 +0800
Subject: [PATCH] Merge branch 'master' of http://47.108.235.38:8080/r/cylsg

---
 cylsg/EzJob/WeChatJob.cs |   76 ++++++++++++++++++++++++++-----------
 1 files changed, 53 insertions(+), 23 deletions(-)

diff --git a/cylsg/EzJob/WeChatJob.cs b/cylsg/EzJob/WeChatJob.cs
index 60c5e9a..3003768 100644
--- a/cylsg/EzJob/WeChatJob.cs
+++ b/cylsg/EzJob/WeChatJob.cs
@@ -5,6 +5,7 @@
 using Furion.FriendlyException;
 using Furion.Schedule;
 using Microsoft.AspNetCore.Http.HttpResults;
+using SKIT.FlurlHttpClient.Wechat.TenpayV3.Models;
 using System;
 using System.Collections.Generic;
 using System.Linq;
@@ -32,20 +33,21 @@
             }
 
             var WeChatTransferOrderRs = new BaseRepository<WeChatTransferOrder>();
-            var OderList = await WeChatTransferOrderRs.AsQueryable().Includes(x=>x.TransferDetailList).Where(x => (x.BatchId != null && x.BatchId != "") || x.BatchStatus == "ACCEPTED" || x.BatchStatus == "PROCESSING").ToListAsync();
+            var OderList = await WeChatTransferOrderRs.AsQueryable().Includes(x=>x.TransferDetailList).Where(x => (x.BatchId != null && x.BatchId != "")&&(x.BatchStatus==null|| x.BatchStatus == "ACCEPTED" || x.BatchStatus == "PROCESSING")).ToListAsync();
 
             foreach( var o in OderList )
             {
-             var ret  =    await payServices.TransferBatches(new SKIT.FlurlHttpClient.Wechat.TenpayV3.Models.GetTransferBatchByBatchIdRequest
+                var ret = await payServices.TransferBatches(new  GetTransferBatchByOutBatchNumberRequest
                 {
-                    BatchId = o.BatchId
+                    OutBatchNumber = o.OutBatchNumber
+                
+                     
 
-                });
+                }); ;
                 if(ret != null)
                 {
                     if(ret.IsSuccessful())
-                    {
-                       
+                    {    
                         
                         if (ret.TransferBatch.BatchStatus == "FINISHED")
                         {
@@ -61,28 +63,32 @@
                             foreach (var item in o.TransferDetailList)
                             {
                                 var del =ret.TransferDetailList.Where(x=>x.OutDetailNumber==item.OutDetailNumber).FirstOrDefault();
-                                item.DetailStatus = del?.DetailStatus;
-                                switch (item.DetailStatus)
+                                if (del != null)
+
                                 {
-                                    case "FAIL":
-                                        //澶辫触锛岃幏鍙栧け璐ュ師鍥�
-                                        var retde = await payServices.TransferBatchesDetails(new SKIT.FlurlHttpClient.Wechat.TenpayV3.Models.GetTransferBatchDetailByDetailIdRequest
-                                        {
-                                            BatchId = o.BatchId,
-                                            DetailId = del.DetailId,
+                                    item.DetailStatus = del?.DetailStatus;
+                                    switch (item.DetailStatus)
+                                    {
+                                        case "FAIL":
+                                            //澶辫触锛岃幏鍙栧け璐ュ師鍥�
+                                            var retde = await payServices.TransferBatchesDetails(new SKIT.FlurlHttpClient.Wechat.TenpayV3.Models.GetTransferBatchDetailByDetailIdRequest
+                                            {
+                                                BatchId = o.BatchId,
+                                                DetailId = del.DetailId,
 
-                                        });
+                                            });
 
-                                        item.FailReason = retde?.FailReason;
-                                        break;
-                                    case "SUCCESS":
-                                        item.DetailStatus = "SUCCESS";
+                                            item.FailReason = retde?.FailReason;
+                                            break;
+                                        case "SUCCESS":
+                                            item.DetailStatus = "SUCCESS";
 
-                                        break;
+                                            break;
 
-                                    default:
-                                        item.DetailStatus = del?.DetailStatus;
-                                        break;
+                                        default:
+                                            item.DetailStatus = del?.DetailStatus;
+                                            break;
+                                    }
                                 }
                                
                                 
@@ -92,7 +98,31 @@
                         
 
                         }
+                        else
+                            if(ret.TransferBatch.BatchStatus== "PROCESSING")
+                        {
+                            o.BatchStatus = ret.TransferBatch.BatchStatus;
+                            o.UpDataBy = "ExecuteAsync";
+                            o.UpDataTime = DateTime.Now;
+                            o.CloseReason = ret.TransferBatch.CloseReason;
+                            o.FailAmount = ret.TransferBatch.FailAmount;
+                            o.FailNum = ret.TransferBatch.FailNumber;
+                            o.SuccessNum = ret.TransferBatch.SuccessNumber;
+                            o.SuccessAmount = ret.TransferBatch.SuccessAmount;
+                        }
                     }
+                    else
+                    {
+                        //澶勭悊澶辫触
+                        o.ErrorCode = ret.ErrorCode;
+                        o.ErrorMsg = ret.ErrorMessage;
+                        o.UpDataBy = "ExecuteAsync";
+                        o.UpDataTime = DateTime.Now;
+
+
+                    }
+
+                    await WeChatTransferOrderRs.UpdateRangeAsync(OderList);
                 }
             }
         }

--
Gitblit v1.9.1