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/EzInitQ/PayServiceMessageQ.cs |  119 +++++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 111 insertions(+), 8 deletions(-)

diff --git a/cylsg/EzInitQ/PayServiceMessageQ.cs b/cylsg/EzInitQ/PayServiceMessageQ.cs
index a4224b7..1b98ba1 100644
--- a/cylsg/EzInitQ/PayServiceMessageQ.cs
+++ b/cylsg/EzInitQ/PayServiceMessageQ.cs
@@ -8,6 +8,7 @@
 using Furion;
 using Furion.DatabaseAccessor;
 using Furion.FriendlyException;
+using Furion.Logging;
 using InitQ.Abstractions;
 using InitQ.Attributes;
 using Mapster;
@@ -29,14 +30,7 @@
     {
         private  IEzCoreNetRedisService _ezCoreNetRedisService;
         private   IWecharPayServicecs _wecharPayServicecs;
-        private  IMapper _mapper;
-        //public PayServiceMessageQ(IEzCoreNetRedisService ezCoreNetRedisService,IWecharPayServicecs wecharPayServicecs,IMapper mapper) {
-
-        //    _ezCoreNetRedisService = ezCoreNetRedisService;
-        //    _wecharPayServicecs = wecharPayServicecs;
-        //     _mapper = mapper;
-        
-        //}
+        private  IMapper _mapper;    
 
         /// <summary>
         /// 寰俊杞处闃熷垪澶勭悊
@@ -191,5 +185,114 @@
 
 
         }
+
+        [Subscribe(InitQMessages.WxTransfer)]
+        public async void WxTransfer(string msg)
+        {
+            _ezCoreNetRedisService = App.GetService<IEzCoreNetRedisService>();
+            _wecharPayServicecs = App.GetService<IWecharPayServicecs>();
+            _mapper = App.GetService<IMapper>();
+        
+    
+            var WeChatTransferOrderwork = new BaseRepository<WeChatTransferOrder>(); 
+            var TransferOrder = await WeChatTransferOrderwork.AsQueryable().Includes(x => x.TransferDetailList).Where(x=>x.Id==msg.toInt()).FirstAsync();
+           if(TransferOrder == null)
+            {
+                Log.Error($"WxTransfer寰俊鏀粯澶勭悊 澶辫触锛屽師鍥犳槸娌℃湁鎵惧埌TransferOrder 锛屼紶閫扞d涓簕msg}");
+
+                return;
+            }
+          if(!string.IsNullOrEmpty(TransferOrder.BatchStatus))
+            {
+          
+                return;
+            }
+           
+                // 鍙戣捣鏀粯
+                var requit = _mapper.Map<CreateTransferBatchRequest>(TransferOrder);
+            requit.AppId = App.Configuration["WechatAPP:AppId"];
+            requit.BatchName = "灏忛晣涓存椂宸ュ伐璧勮浆璐�";
+            requit.BatchRemark = "宸濆嵃涓存椂宸ュ伐璧勶紝鎿嶈繃200鐨勫绗旀敮浠�";
+           
+            var ret = await _wecharPayServicecs.Transfer(requit);
+            if (ret.IsSuccessful())
+            {
+                var retdata = await WeChatTransferOrderwork.GetByIdAsync(TransferOrder.Id);
+                retdata.BatchId = ret.BatchId;
+                retdata.BatchStatus = ret.BatchStatus;
+                retdata.UpDataBy = "寰俊浠樻璇锋眰涔嬪悗";
+                retdata.UpDataTime = DateTime.Now;
+                await WeChatTransferOrderwork.UpdateAsync(retdata);
+            }
+            else
+            {
+                var retdata = await WeChatTransferOrderwork.GetByIdAsync(TransferOrder.Id);              
+                retdata.ErrorCode = ret.ErrorCode;
+                retdata.ErrorMsg = ret.ErrorMessage;
+                retdata.BatchStatus = ret.BatchStatus;
+                retdata.UpDataBy = "寰俊浠樻璇锋眰涔嬪悗";
+                retdata.UpDataTime = DateTime.Now;
+                await WeChatTransferOrderwork.UpdateAsync(retdata);
+                Log.Error($"WxTransfer寰俊鏀粯澶勭悊 澶辫触锛屼紶閫扞d涓簕msg} 閿欒鍘熷洜:{retdata.ErrorMsg}");
+                return;
+            }
+
+
+        }
+
+
+        [Subscribe(InitQMessages.WxTransferAg)]
+        public async void WxTransferAg(string msg)
+        {
+            _ezCoreNetRedisService = App.GetService<IEzCoreNetRedisService>();
+            _wecharPayServicecs = App.GetService<IWecharPayServicecs>();
+            _mapper = App.GetService<IMapper>();
+
+
+            var WeChatTransferOrderwork = new BaseRepository<WeChatTransferOrder>();
+            var TransferOrder = await WeChatTransferOrderwork.AsQueryable().Includes(x => x.TransferDetailList).Where(x => x.Id == msg.toInt()).FirstAsync();
+            if (TransferOrder == null)
+            {
+                Log.Error($" 鍐嶆璋冪敤WxTransfer寰俊鏀粯澶勭悊 澶辫触锛屽師鍥犳槸娌℃湁鎵惧埌TransferOrder 锛屼紶閫扞d涓簕msg}");
+
+                return;
+            }
+            if (!string.IsNullOrEmpty(TransferOrder.BatchStatus))
+            {
+
+                return;
+            }
+
+            // 鍙戣捣鏀粯
+            var requit = _mapper.Map<CreateTransferBatchRequest>(TransferOrder);
+            requit.AppId = App.Configuration["WechatAPP:AppId"];
+            requit.BatchName = "灏忛晣涓存椂宸ュ伐璧勮浆璐�";
+            requit.BatchRemark = "宸濆嵃涓存椂宸ュ伐璧勶紝鎿嶈繃200鐨勫绗旀敮浠�";
+
+            var ret = await _wecharPayServicecs.Transfer(requit);
+            if (ret.IsSuccessful())
+            {
+                var retdata = await WeChatTransferOrderwork.GetByIdAsync(TransferOrder.Id);
+                retdata.BatchId = ret.BatchId;
+                retdata.BatchStatus = ret.BatchStatus;
+                retdata.UpDataBy = "鍐嶆寰俊浠樻璇锋眰";
+                retdata.UpDataTime = DateTime.Now;
+                await WeChatTransferOrderwork.UpdateAsync(retdata);
+            }
+            else
+            {
+                var retdata = await WeChatTransferOrderwork.GetByIdAsync(TransferOrder.Id);
+                retdata.ErrorCode = ret.ErrorCode;
+                retdata.ErrorMsg = ret.ErrorMessage;
+                retdata.BatchStatus = ret.BatchStatus;
+                retdata.UpDataBy = "鍐嶅井淇′粯娆捐姹�";
+                retdata.UpDataTime = DateTime.Now;
+                await WeChatTransferOrderwork.UpdateAsync(retdata);
+                Log.Error($"WxTransfer寰俊鏀粯澶勭悊 澶辫触锛屼紶閫扞d涓簕msg} 閿欒鍘熷洜:{retdata.ErrorMsg}");
+                return;
+            }
+
+
+        }
     }
 }

--
Gitblit v1.9.1