Browse Source

Merge branch 'feature-dgy-进件区分银联品牌' into feature-dgy-功能测试

DuGuYang 6 months ago
parent
commit
4b547c694c
1 changed files with 86 additions and 82 deletions
  1. 86 82
      Util/HaoDa/GetHaoDaFTPInfoService.cs

+ 86 - 82
Util/HaoDa/GetHaoDaFTPInfoService.cs

@@ -24,15 +24,15 @@ namespace MySystem
 
         public void Start()
         {
-            //半小时执行获取好哒FTP交易数据
-            Thread th = new Thread(GetFTPDataInfoHalfHour);
-            th.IsBackground = true;
-            th.Start();
+            // //半小时执行获取好哒FTP交易数据
+            // Thread th = new Thread(GetFTPDataInfoHalfHour);
+            // th.IsBackground = true;
+            // th.Start();
 
-            //每天凌晨执行获取好哒FTP今日交易数据
-            Thread th1 = new Thread(GetFTPDataInfoToday);
-            th1.IsBackground = true;
-            th1.Start();
+            // //每天凌晨执行获取好哒FTP今日交易数据
+            // Thread th1 = new Thread(GetFTPDataInfoToday);
+            // th1.IsBackground = true;
+            // th1.Start();
 
             //每天凌晨执行获取好哒FTP昨日交易数据
             Thread th2 = new Thread(GetFTPDataInfoYesterday);
@@ -295,94 +295,98 @@ namespace MySystem
 
             while (true)
             {
-                if (DateTime.Now.Hour > 0 && DateTime.Now.Hour < 9)
+                string check = function.ReadInstance("/GetFTPDataInfoYesterday/check" + DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd") + ".txt");
+                if (string.IsNullOrEmpty(check))
                 {
-                    try
+                    if (DateTime.Now.Hour > 11 && DateTime.Now.Hour < 24)
                     {
-                        // 创建FtpWebRequest对象
-                        FtpWebRequest request = (FtpWebRequest)WebRequest.Create(ftpServerAddress + filePath);
-                        request.Method = WebRequestMethods.Ftp.DownloadFile;
-                        request.Credentials = new NetworkCredential(ftpUser, ftpPassword);
+                        try
+                        {
+                            // 创建FtpWebRequest对象
+                            FtpWebRequest request = (FtpWebRequest)WebRequest.Create(ftpServerAddress + filePath);
+                            request.Method = WebRequestMethods.Ftp.DownloadFile;
+                            request.Credentials = new NetworkCredential(ftpUser, ftpPassword);
 
-                        // 使用WebResponse获取响应
-                        FtpWebResponse response = (FtpWebResponse)request.GetResponse();
+                            // 使用WebResponse获取响应
+                            FtpWebResponse response = (FtpWebResponse)request.GetResponse();
 
-                        // 打开数据流
-                        Stream responseStream = response.GetResponseStream();
-                        using (StreamReader reader = new StreamReader(responseStream))
-                        {
-                            WebCMSEntities db = new WebCMSEntities();
-                            // 读取数据
-                            string fileContents = reader.ReadToEnd();
-                            if (!string.IsNullOrEmpty(fileContents))
+                            // 打开数据流
+                            Stream responseStream = response.GetResponseStream();
+                            using (StreamReader reader = new StreamReader(responseStream))
                             {
-                                var DataInfo = fileContents.TrimEnd('\n').Split('\n', 2);
-                                var DataList = DataInfo[1].Split('\n');
-                                foreach (var DataListItem in DataList)
+                                WebCMSEntities db = new WebCMSEntities();
+                                // 读取数据
+                                string fileContents = reader.ReadToEnd();
+                                if (!string.IsNullOrEmpty(fileContents))
                                 {
-                                    var DataListInfo = DataListItem.Split(',');
-
-                                    var MerchantNo = ""; // 商户号
-                                    var BaseNo = ""; // 设备号
-                                    var OrderNo = ""; // 订单号
-                                    var PayWay = ""; // 支付方式(微信 支付宝)
-                                    var TradeType = ""; // 交易类型
-                                    var TradeAmount = ""; // 交易金额
-                                    var TradeFee = ""; // 交易手续费
-                                    var TradeDate = ""; // 交易时间
-                                    var TradeCycle = ""; // 结算周期
-
-                                    MerchantNo = DataListInfo[0];
-                                    BaseNo = DataListInfo[1];
-                                    OrderNo = DataListInfo[2];
-                                    PayWay = DataListInfo[3];
-                                    TradeType = DataListInfo[4];
-                                    TradeAmount = DataListInfo[5];
-                                    TradeFee = DataListInfo[6];
-                                    TradeDate = DataListInfo[7];
-                                    TradeCycle = DataListInfo[8];
-
-                                    TradeDate = TradeDate.Substring(0, 4) + "-" + TradeDate.Substring(4, 2) + "-" + TradeDate.Substring(6, 2) + " " + TradeDate.Substring(8, 2) + ":" + TradeDate.Substring(10, 2) + ":" + TradeDate.Substring(12, 2);
-
-                                    var PayMode = 0;
-                                    if (PayWay.Contains("支付宝")) PayMode = 1;
-                                    if (PayWay.Contains("微信")) PayMode = 2;
-
-                                    var merchantAddInfo = db.MerchantAddInfo.FirstOrDefault(m => m.MchtNo == MerchantNo) ?? new MerchantAddInfo();
-                                    if (merchantAddInfo.Id > 0)
+                                    var DataInfo = fileContents.TrimEnd('\n').Split('\n', 2);
+                                    var DataList = DataInfo[1].Split('\n');
+                                    foreach (var DataListItem in DataList)
                                     {
-                                        var merchantInfo = db.MerchantInfo.FirstOrDefault(m => m.Id == merchantAddInfo.Id) ?? new MerchantInfo();
-                                        var orders = db.ConsumerOrders.FirstOrDefault(m => m.SeoTitle == OrderNo && OrderNo == OrderNo) ?? new ConsumerOrders();
-                                        if (orders.Id == 0)
+                                        var DataListInfo = DataListItem.Split(',');
+
+                                        var MerchantNo = ""; // 商户号
+                                        var BaseNo = ""; // 设备号
+                                        var OrderNo = ""; // 订单号
+                                        var PayWay = ""; // 支付方式(微信 支付宝)
+                                        var TradeType = ""; // 交易类型
+                                        var TradeAmount = ""; // 交易金额
+                                        var TradeFee = ""; // 交易手续费
+                                        var TradeDate = ""; // 交易时间
+                                        var TradeCycle = ""; // 结算周期
+
+                                        MerchantNo = DataListInfo[0];
+                                        BaseNo = DataListInfo[1];
+                                        OrderNo = DataListInfo[2];
+                                        PayWay = DataListInfo[3];
+                                        TradeType = DataListInfo[4];
+                                        TradeAmount = DataListInfo[5];
+                                        TradeFee = DataListInfo[6];
+                                        TradeDate = DataListInfo[7];
+                                        TradeCycle = DataListInfo[8];
+
+                                        TradeDate = TradeDate.Substring(0, 4) + "-" + TradeDate.Substring(4, 2) + "-" + TradeDate.Substring(6, 2) + " " + TradeDate.Substring(8, 2) + ":" + TradeDate.Substring(10, 2) + ":" + TradeDate.Substring(12, 2);
+
+                                        var PayMode = 0;
+                                        if (PayWay.Contains("支付宝")) PayMode = 1;
+                                        if (PayWay.Contains("微信")) PayMode = 2;
+
+                                        var merchantAddInfo = db.MerchantAddInfo.FirstOrDefault(m => m.MchtNo == MerchantNo) ?? new MerchantAddInfo();
+                                        if (merchantAddInfo.Id > 0)
                                         {
-                                            var query = db.ConsumerOrders.Add(new ConsumerOrders()
+                                            var merchantInfo = db.MerchantInfo.FirstOrDefault(m => m.Id == merchantAddInfo.Id) ?? new MerchantInfo();
+                                            var orders = db.ConsumerOrders.FirstOrDefault(m => m.SeoTitle == OrderNo && OrderNo == OrderNo) ?? new ConsumerOrders();
+                                            if (orders.Id == 0)
                                             {
-                                                Status = 1,
-                                                CreateDate = DateTime.Parse(TradeDate),
-                                                UpdateDate = DateTime.Parse(TradeDate),
-                                                SnNo = BaseNo,
-                                                PayMoney = decimal.Parse(TradeAmount),
-                                                PayMode = PayMode,
-                                                SeoTitle = OrderNo,
-                                                OrderNo = OrderNo,
-                                                MerchantId = merchantAddInfo.Id,
-                                                UserId = merchantInfo.UserId
-                                            }).Entity;
+                                                var query = db.ConsumerOrders.Add(new ConsumerOrders()
+                                                {
+                                                    Status = 1,
+                                                    CreateDate = DateTime.Parse(TradeDate),
+                                                    UpdateDate = DateTime.Parse(TradeDate),
+                                                    SnNo = BaseNo,
+                                                    PayMoney = decimal.Parse(TradeAmount),
+                                                    PayMode = PayMode,
+                                                    SeoTitle = OrderNo,
+                                                    OrderNo = OrderNo,
+                                                    MerchantId = merchantAddInfo.Id,
+                                                    UserId = merchantInfo.UserId
+                                                }).Entity;
+                                            }
                                         }
                                     }
+                                    db.SaveChanges();
+                                    db.Dispose();
                                 }
-                                db.SaveChanges();
-                                db.Dispose();
-                            }
 
-                            // 关闭响应
-                            response.Close();
-                            Thread.Sleep(1800000);
+                                // 关闭响应
+                                response.Close();
+                                Thread.Sleep(1800000);
+                            }
+                        }
+                        catch (WebException ex)
+                        {
+                            function.WriteLog(DateTime.Now.ToString() + ":" + ex.ToString(), "获取好哒FTP文件数据异常");
                         }
-                    }
-                    catch (WebException ex)
-                    {
-                        function.WriteLog(DateTime.Now.ToString() + ":" + ex.ToString(), "获取好哒FTP文件数据异常");
                     }
                 }
             }