浏览代码

调整降扣相关逻辑

lichunlei 2 年之前
父节点
当前提交
fad197b25a
共有 4 个文件被更改,包括 95 次插入32 次删除
  1. 69 22
      AppStart/Helper/SetDepositPostService.cs
  2. 22 7
      AppStart/Helper/SetDepositService.cs
  3. 1 1
      AppStart/Helper/SetFeeFlagService.cs
  4. 3 2
      Startup.cs

+ 69 - 22
AppStart/Helper/SetDepositPostService.cs

@@ -91,15 +91,15 @@ namespace MySystem
                                             db.SaveChanges();
                                         }
                                     }
-                                    else if(pos.BrandId == 2) //金控
+                                    else if(pos.BrandId == 2) //开店宝
                                     {
                                         Fee = Fee / 100;
                                         string content = ModifyFee(pos.PosSn, Fee);
                                         JsonData obj = JsonMapper.ToObject(content);
-                                        if(obj["code"].ToString() == "0000")
+                                        if(content.Contains("orderNo"))
                                         {
-                                            pos.SeoDescription = "设置成功";
-                                            SetRecordResult(db, RecordId, 1, "设置成功");
+                                            pos.SeoDescription = "提交成功|" + obj["orderNo"].ToString();
+                                            // SetRecordResult(db, RecordId, 1, "设置成功");
                                             db.SaveChanges();
                                         }
                                         else
@@ -157,7 +157,7 @@ namespace MySystem
                         Thread.Sleep(500);
                     }
                     catch (Exception ex)
-                    {                        
+                    {
                         function.WriteLog(DateTime.Now.ToString() + "\r\n" + ex.ToString(), "设置费率到支付平台异常");
                     }
                 }
@@ -181,6 +181,61 @@ namespace MySystem
             }
         }
 
+
+        public void StartKdb()
+        {
+            Thread th = new Thread(StartKdbDo);
+            th.IsBackground = true;
+            th.Start();
+        }
+
+        private void StartKdbDo()
+        {
+            while (true)
+            {
+                try
+                {
+                    WebCMSEntities db = new WebCMSEntities();
+                    var poslist = db.PosMachinesTwo.Select(m => new { m.Id, m.BrandId, m.SeoDescription }).Where(m => m.BrandId == 2 && m.SeoDescription.StartsWith("提交成功|")).ToList();
+                    foreach (var pos in poslist)
+                    {
+                        string[] datalist = pos.SeoDescription.Split('|');
+                        string orderNo = datalist[1];
+                        int RecordId = int.Parse(datalist[2]);
+                        string content = QueryFee(orderNo);
+                        JsonData obj = JsonMapper.ToObject(content);
+                        PosMachinesTwo edit = db.PosMachinesTwo.FirstOrDefault(m => m.Id == pos.Id);
+                        if(edit != null)
+                        {
+                            if(obj["status"].ToString() == "HANDLE_STATUS_COMPLETE")
+                            {
+                                edit.SeoDescription = "设置成功";
+                                SetRecordResult(db, RecordId, 1, "设置成功");
+                                db.SaveChanges();
+                            }
+                            else
+                            {
+                                edit.SeoDescription = "设置失败";
+                                SetRecordResult(db, RecordId, -1, "设置失败");
+                                db.SaveChanges();
+                            }
+                        }
+                    }
+                    db.Dispose();
+                }
+                catch(Exception ex)
+                {
+                    function.WriteLog(DateTime.Now.ToString() + "\r\n" + ex.ToString(), "开店宝费率异步获取结果异常");
+                }
+                Thread.Sleep(5000);
+            }
+        }
+
+
+
+
+
+
         #region 金控
         // 开发环境
         // string mfe88PublicKey = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCy8cg6/tXbSj2i1tyi7VztwJw7uNmqc3bS6sVIZkDYhTmcXhpV17jq4j2zz/tURwX8b3MdK1A1HTR1XRd7hl0w2UF9iFk6UezByJ5tdNDoffMCGJtVSThq+MCV+WQI26tJ/ub6bm7GPrzTR79fntN+nTniRM4trjONN2WzEhHEcwIDAQAB";
@@ -261,28 +316,20 @@ namespace MySystem
             return result;
         }
         #endregion
-            
+
         #region 开店宝
 
         //生产环境
-        // string KdbApiUrl = "https://kzy.kdb-tj.com:5055/api";
-        // string KDBAESKEY = "F@xh#sga41c08@pe";
-        // string Kdb_Rsa_PrivateKey = "MIIBUwIBADANBgkqhkiG9w0BAQEFAASCAT0wggE5AgEAAkEAl2x9dSSCfNDik6VM2dn/SK1ONSbb7AKyXM1gHw8PMbzWN1pK7YGaPqHlIRbAeFeIvLKVeMxrji+63W6LpB0yDQIDAQABAkAfpHUnCIUYDhJ65f0EPTDCgCyqoL8uN3YMPIKMmvoC22/i7AC6zf/bWk4JdratN+gvvnjGgHQff6HH5dOQ6sbFAiEAxPYSLADzIv374J8O+LluXIcgI5zXm4r4dMtKbCmmWSsCIQDE0BRKsBcBZ9NvJ9Km+m/d1hN9v5hFT842zrkUFJmVpwIgBdYc17z3d3P7QL613NzxzkAazbNaGDvX/O4BOI9LZJ0CICrZElHgXGHV9NYyWU45H7mwLbYmzEPqx/5uqySQB4/pAiBgKYv3RGnsZ8Zm1EKAJjUX7ehdteBgPSA/UgIDZQ4oyw==";
-        // string AgencyId = "3013890129";
+        string KdbApiUrl = "https://kzy.kdb-tj.com:5055/api";
+        string KDBAESKEY = "F@xh#sga41c08@pe";
+        string Kdb_Rsa_PrivateKey = "MIIBUwIBADANBgkqhkiG9w0BAQEFAASCAT0wggE5AgEAAkEAl2x9dSSCfNDik6VM2dn/SK1ONSbb7AKyXM1gHw8PMbzWN1pK7YGaPqHlIRbAeFeIvLKVeMxrji+63W6LpB0yDQIDAQABAkAfpHUnCIUYDhJ65f0EPTDCgCyqoL8uN3YMPIKMmvoC22/i7AC6zf/bWk4JdratN+gvvnjGgHQff6HH5dOQ6sbFAiEAxPYSLADzIv374J8O+LluXIcgI5zXm4r4dMtKbCmmWSsCIQDE0BRKsBcBZ9NvJ9Km+m/d1hN9v5hFT842zrkUFJmVpwIgBdYc17z3d3P7QL613NzxzkAazbNaGDvX/O4BOI9LZJ0CICrZElHgXGHV9NYyWU45H7mwLbYmzEPqx/5uqySQB4/pAiBgKYv3RGnsZ8Zm1EKAJjUX7ehdteBgPSA/UgIDZQ4oyw==";
+        string AgencyId = "3013890129";
 
         //开发环境
-        string KdbApiUrl = "https://kzy-test.kdb-tj.com:5056/api";
-        string KDBAESKEY = "Ebn4N28MvEXEvPTA";
-        string Kdb_Rsa_PrivateKey = "MIIBVQIBADANBgkqhkiG9w0BAQEFAASCAT8wggE7AgEAAkEAsPyH5Y5NySHHKWIgPwxbZFkd33vzuWKv+Kdpug5/qYAnpTShDSMXQ2Ib7gc+B/yvj4uZ/k1A/xHpzHTPl6MzQQIDAQABAkA2sGHhyj45B2n+XKbwNIZNFMiJVUjzoQ4VPM4Lww0pt781GeqBCGgEIgTjmmg/FTGjgwTb7ta1A5G9Qn2nPG0RAiEA4x7W6XKdSL/FyVdlt4jijNQNZfLEqEPy1NnchRWUf40CIQDHfb49KP3pW4ZDX3xS42fYd9p7AGZ+qpVBnJfGGyFrhQIhALk3HCHyowuBwMUKLdw3mDEqeOarzO4/w1cLd8dcKua9AiEAtdPAj9JLDGWljMb9dDddsYockzwcL5ufizwFgkW8QlkCIADYU4+fFKqySLGX3MmEIJ/mU632PRtJAh4LSL8/Ij1H";
-        string AgencyId = "3013890202";
-
-        // 查询机构政策列表
-        public string GetPolicyList()
-        {
-            string url = KdbApiUrl + "/marketing/plan/query/list";
-            //[{"id":100014,"name":"韩测试营销方案(韩测试营销方案)"}]
-            return PostKDB(url, "{}");
-        }
+        // string KdbApiUrl = "https://kzy-test.kdb-tj.com:5056/api";
+        // string KDBAESKEY = "Ebn4N28MvEXEvPTA";
+        // string Kdb_Rsa_PrivateKey = "MIIBVQIBADANBgkqhkiG9w0BAQEFAASCAT8wggE7AgEAAkEAsPyH5Y5NySHHKWIgPwxbZFkd33vzuWKv+Kdpug5/qYAnpTShDSMXQ2Ib7gc+B/yvj4uZ/k1A/xHpzHTPl6MzQQIDAQABAkA2sGHhyj45B2n+XKbwNIZNFMiJVUjzoQ4VPM4Lww0pt781GeqBCGgEIgTjmmg/FTGjgwTb7ta1A5G9Qn2nPG0RAiEA4x7W6XKdSL/FyVdlt4jijNQNZfLEqEPy1NnchRWUf40CIQDHfb49KP3pW4ZDX3xS42fYd9p7AGZ+qpVBnJfGGyFrhQIhALk3HCHyowuBwMUKLdw3mDEqeOarzO4/w1cLd8dcKua9AiEAtdPAj9JLDGWljMb9dDddsYockzwcL5ufizwFgkW8QlkCIADYU4+fFKqySLGX3MmEIJ/mU632PRtJAh4LSL8/Ij1H";
+        // string AgencyId = "3013890202";
 
         // 修改费率接口
         public string ModifyFee(string PosSn, decimal Fee)

+ 22 - 7
AppStart/Helper/SetDepositService.cs

@@ -62,7 +62,15 @@ namespace MySystem
                                 if(merchant != null)
                                 {
                                     decimal Fee = Kind == 1 ? 0.63M : 0.6M;
-                                    if(Kind == 1)
+                                    if(Kind == 0)
+                                    {
+                                        pos.UpFeeFlag = 1;
+                                        pos.UpFeeMan = OpMan;
+                                        pos.UpFeeDate = DateTime.Now;
+                                        merchant.Status = 1;
+                                        merchant.SeoKeyword = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
+                                    }
+                                    else if(Kind == 1)
                                     {
                                         pos.UpFeeFlag = 1;
                                         pos.UpFeeMan = OpMan;
@@ -81,15 +89,22 @@ namespace MySystem
                                     }
                                     db.SaveChanges();
                                     pos.QueryCount = Kind;
-                                    if(userPosList.ContainsKey(pos.BuyUserId))
+                                    if(Kind > 1) //只有调降发消息
                                     {
-                                        userPosList[pos.BuyUserId].Add(pos);
+                                        if(userPosList.ContainsKey(pos.BuyUserId))
+                                        {
+                                            userPosList[pos.BuyUserId].Add(pos);
+                                        }
+                                        else
+                                        {
+                                            List<PosMachinesTwo> subPos = new List<PosMachinesTwo>();
+                                            subPos.Add(pos);
+                                            userPosList.Add(pos.BuyUserId, subPos);
+                                        }
                                     }
-                                    else
+                                    if(Kind >= 1)
                                     {
-                                        List<PosMachinesTwo> subPos = new List<PosMachinesTwo>();
-                                        subPos.Add(pos);
-                                        userPosList.Add(pos.BuyUserId, subPos);
+                                        RedisDbconn.Instance.AddList("SetDepositPostQueue", data);
                                     }
                                 }
                             }

+ 1 - 1
AppStart/Helper/SetFeeFlagService.cs

@@ -43,7 +43,7 @@ namespace MySystem
                             //统计需要推送消息的用户Id
                             foreach (var item in posList)
                             {
-                                string info = "{\"RecordId\":\"\",\"PosId\":\"" + item.Id + "\",\"Fee\": \"" + 0.63 + "\",\"Kind\": \"" + 1 + "\",\"OpMan\": \""+"系统"+"\"}";
+                                string info = "{\"RecordId\":\"\",\"PosId\":\"" + item.Id + "\",\"Fee\": \"" + 0.63 + "\",\"Kind\": \"0\",\"OpMan\": \""+"系统"+"\"}";
                                 RedisDbconn.Instance.AddList("SetDepositQueue", info);
                             }
                         }

+ 3 - 2
Startup.cs

@@ -208,8 +208,9 @@ namespace MySystem
 
             HelpProfitHelper.Instance.Start();
             HelpProfitPreMerchantHelper.Instance.Start();
-            SetDepositService.Instance.Start(); //调整费率(通知、标记)
-            SetDepositPostService.Instance.Start(); //提交支付公司设置费率接口
+            // SetDepositService.Instance.Start(); //调整费率(通知、标记)
+            // SetDepositPostService.Instance.Start(); //提交支付公司设置费率接口
+            // SetDepositPostService.Instance.StartKdb(); //监控开店宝费率设置结果
             // SetFeeFlagService.Instance.Start(); //178天提前通知创客费率调升消息
 
             // StatService.Instance.StartPosActNum(); //实时统计激活数