From e87985ec1dcb69beedaf9f95e8e7aba14b7c08d6 Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期三, 09 十二月 2020 18:50:14 +0800
Subject: [PATCH] 2020-12-09 1.信息中心,增加下划线和点击Alter提醒详情。

---
 HDL_ON/DAL/Server/HttpUtil.cs |  283 ++++++++++++++++++++++----------------------------------
 1 files changed, 112 insertions(+), 171 deletions(-)

diff --git a/HDL_ON/DAL/Server/HttpUtil.cs b/HDL_ON/DAL/Server/HttpUtil.cs
index 1deb23f..1cca265 100644
--- a/HDL_ON/DAL/Server/HttpUtil.cs
+++ b/HDL_ON/DAL/Server/HttpUtil.cs
@@ -4,18 +4,15 @@
 using System.Net;
 using System.Security.Cryptography;
 using System.Text;
+using HDL_ON.Entity;
 using RestSharp;
-using Shared;
 
 namespace HDL_ON.DAL.Server
 {
     public class HttpUtil
     {
+
         #region HttpUtil 鍏ㄥ眬甯搁噺
-        /// <summary>
-        /// 璇锋眰鎴愬姛鐨勭姸鎬佺爜
-        /// </summary>
-        public const string SUCCESS_CODE = "0";
         ///// <summary>
         ///// API_HTTPS
         ///// </summary>
@@ -40,9 +37,9 @@
         #endregion
 
         /// <summary>
-        /// 鍥哄畾鍩熷悕
+        /// 鍥哄畾鍩熷悕,姝e紡鐜
         /// </summary>
-        //public const string GlobalRequestHttpsHost = "https://center.hdlcontrol.com";
+        //public const string GlobalRequestHttpsHost = "https://nearest.hdlcontrol.com";
         public const string GlobalRequestHttpsHost = "https://test-gz.hdlcontrol.com";
 
         /// <summary>
@@ -84,6 +81,27 @@
         //    }
         //    return mResponsePackNew;
         //}
+
+        /// <summary>
+        /// POST璇锋眰鏂规硶 body鍙傛暟
+        /// 閽堝浣忓畢鐩稿叧鎺ュ彛灏佽
+        /// 璋冪敤浣忓畢褰撳墠鎵�鍦ㄥ尯鍩熷煙鍚�
+        /// 濡傛灉鏄垎浜綇瀹咃紝浣跨敤涓讳汉鐨則oken杩涜鐩稿叧鎿嶄綔
+        /// </summary>
+        /// <param name="apiPath"></param>
+        /// <param name="bodyParameterJson"></param>
+        /// <param name="mTimeout"></param>
+        /// <returns></returns>
+        public static ResponsePackNew RequestHttpsPostFroHome(string apiPath, string bodyParameterJson, int mTimeout = 10)
+        {
+            string urlHead = DB_ResidenceData.residenceData.residecenInfo.regionUrl;
+            //var replaceToken = "";
+            //if (DB_ResidenceData.residenceData.residecenInfo.IsOthreShare)
+            //{
+            //    replaceToken = DB_ResidenceData.residenceData.MasterToken;
+            //}
+            return RequestHttps(Method.POST, apiPath, bodyParameterJson, null, null, urlHead, "", mTimeout);
+        }
 
         /// <summary>
         /// POST璇锋眰鏂规硶 body鍙傛暟
@@ -133,15 +151,16 @@
             try
             {
 
-                //if (string.IsNullOrEmpty (urlHead)) {
-                //    urlHead = APIInfoConfig.Current.RequestHttpsHost;
-                //}
-                //string requestFullUrl = urlHead + apiPath;
+                if (string.IsNullOrEmpty(urlHead))
+                {
+                    urlHead = UserInfo.Current.RequestHttpsHost;
+                }
+                string requestFullUrl = urlHead + apiPath;
 
 
-                //**************娴嬭瘯**************
-                string requestFullUrl = GlobalRequestHttpsHost + apiPath;
-                //**************娴嬭瘯**************
+                ////**************娴嬭瘯**************
+                //string requestFullUrl = GlobalRequestHttpsHost + apiPath;
+                ////**************娴嬭瘯**************
 
                 RestClient client = new RestClient(requestFullUrl);
 
@@ -152,9 +171,9 @@
 
                 if (string.IsNullOrEmpty(replaceToken))
                 {
-                    if (MainPage.LoginUser != null)
+                    if(UserInfo.Current != null)
                     {/* 濡傛灉涓嶉渶瑕侀獙璇乀oken鍙互涓嶇敤浼犲叆 */
-                        request.AddHeader("Authorization", MainPage.LoginUser.loginTokenString);
+                        request.AddHeader("Authorization",  UserInfo.Current.LoginTokenString);
                     }
                 }
                 else
@@ -188,6 +207,7 @@
                 {
                     try
                     {
+
                         ResponsePackNew revertObj = new ResponsePackNew() { };
                         revertObj = Newtonsoft.Json.JsonConvert.DeserializeObject<ResponsePackNew>(response.Content);
                         //*****涓�浜涘垽绌哄鐞�*****************
@@ -208,20 +228,20 @@
                     }
                     catch (Exception ex)
                     {
-                        HDL_ON.Common.Utlis.WriteLine(ex.Message);
+                        HDL_ON.Utlis.WriteLine(ex.Message);
                         return new ResponsePackNew() { Code = "DATA_EXCEPTION" };
                     }
                 }
                 else
                 {
-                    HDL_ON.Common.Utlis.WriteLine(response.Content);
+                    HDL_ON.Utlis.WriteLine(response.Content);
                     return new ResponsePackNew() { Code = "NETWORK_ERROR" };
                 }
 
             }
             catch (Exception ex)
             {
-                HDL_ON.Common.Utlis.WriteLine(ex.Message);
+                HDL_ON.Utlis.WriteLine(ex.Message);
                 return new ResponsePackNew() { Code = "NETWORK_ERROR" };
             }
 
@@ -244,14 +264,15 @@
             #region RestRequest
             try
             {
-                //if (string.IsNullOrEmpty (urlHead)) {
-                //    urlHead = APIInfoConfig.Current.RequestHttpsHost;
-                //}
-                //string requestFullUrl = urlHead + apiPath;
+                if (string.IsNullOrEmpty(urlHead))
+                {
+                    urlHead = UserInfo.Current.RequestHttpsHost;
+                }
+                string requestFullUrl = urlHead + apiPath;
 
-                //**************娴嬭瘯**************
-                string requestFullUrl = GlobalRequestHttpsHost + apiPath;
-                //**************娴嬭瘯**************
+                ////**************娴嬭瘯**************
+                //string requestFullUrl = GlobalRequestHttpsHost + apiPath;
+                ////**************娴嬭瘯**************
 
                 RestClient client = new RestClient(requestFullUrl);
                 //client.Timeout = mTimeout * 1000;
@@ -261,9 +282,9 @@
 
                 if (string.IsNullOrEmpty(replaceToken))
                 {
-                    if (MainPage.LoginUser != null)
+                    if ( UserInfo.Current != null)
                     {/* 濡傛灉涓嶉渶瑕侀獙璇乀oken鍙互涓嶇敤浼犲叆 */
-                        request.AddHeader("Authorization", MainPage.LoginUser.loginTokenString);
+                        request.AddHeader("Authorization",  UserInfo.Current.LoginTokenString);
                     }
                 }
                 else
@@ -289,7 +310,7 @@
             }
             catch (Exception ex)
             {
-                HDL_ON.Common.Utlis.WriteLine(ex.Message);
+                HDL_ON.Utlis.WriteLine(ex.Message);
                 return null;
             }
             #endregion
@@ -314,14 +335,15 @@
             try
             {
 
-                //if (string.IsNullOrEmpty (urlHead)) {
-                //    urlHead = APIInfoConfig.Current.RequestHttpsHost;
-                //}
-                //string requestFullUrl = urlHead + apiPath;
+                if (string.IsNullOrEmpty(urlHead))
+                {
+                    urlHead = UserInfo.Current.RequestHttpsHost;
+                }
+                string requestFullUrl = urlHead + apiPath;
 
-                //**************娴嬭瘯**************
-                string requestFullUrl = GlobalRequestHttpsHost + apiPath;
-                //**************娴嬭瘯**************
+                ////**************娴嬭瘯**************
+                //string requestFullUrl = GlobalRequestHttpsHost + apiPath;
+                ////**************娴嬭瘯**************
 
                 RestClient client = new RestClient(requestFullUrl);
                 //client.Timeout = mTimeout * 1000;
@@ -332,9 +354,9 @@
 
                 if (string.IsNullOrEmpty(replaceToken))
                 {
-                    if (MainPage.LoginUser != null)
+                    if ( UserInfo.Current != null)
                     {/* 濡傛灉涓嶉渶瑕侀獙璇乀oken鍙互涓嶇敤浼犲叆 */
-                        request.AddHeader("Authorization", MainPage.LoginUser.loginTokenString);
+                        request.AddHeader("Authorization",  UserInfo.Current.LoginTokenString);
                     }
                 }
                 else
@@ -380,26 +402,58 @@
                     }
                     catch (Exception ex)
                     {
-                        HDL_ON.Common.Utlis.WriteLine(ex.Message);
+                        HDL_ON.Utlis.WriteLine(ex.Message);
                         return new ResponsePackNew() { Code = "DATA_EXCEPTION" };
                     }
                 }
                 else
                 {
-                    HDL_ON.Common.Utlis.WriteLine(response.Content);
+                    HDL_ON.Utlis.WriteLine(response.Content);
                     return new ResponsePackNew() { Code = "NETWORK_ERROR" };
                 }
 
             }
             catch (Exception ex)
             {
-                HDL_ON.Common.Utlis.WriteLine(ex.Message);
+                HDL_ON.Utlis.WriteLine(ex.Message);
                 return new ResponsePackNew() { Code = "NETWORK_ERROR" };
             }
 
             #endregion
 
         }
+
+        /// <summary>
+        /// 涓嬭浇鏂囦欢  璇锋眰鏈嶅姟鍣ㄦ柟娉�
+        /// </summary>
+        /// <param name="apiPath"></param>
+        /// <param name="bodyParameterJson"></param>
+        /// <param name="queryDictionary"></param>
+        /// <param name="urlHead"></param>
+        /// <param name="replaceToken"></param>
+        /// <param name="mTimeout"></param>
+        /// <returns></returns>
+        public static byte[] HttpsDownload(string requestFullUrl, int mTimeout = 30)
+        {
+            #region RestRequest
+            try
+            {
+                RestClient client = new RestClient(requestFullUrl);
+                RestRequest request = new RestRequest(Method.GET);
+                request.Timeout = mTimeout * 1000;
+
+                IRestResponse response = client.Execute(request);
+                return response.RawBytes;
+            }
+            catch (Exception ex)
+            {
+                HDL_ON.Utlis.WriteLine(ex.Message);
+                return null;
+            }
+            #endregion
+
+        }
+
 
         /// <summary>
         /// 
@@ -417,7 +471,8 @@
         static string GetTimestamp()
         {
             System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 褰撳湴鏃跺尯
-            return ((long)(DateTime.Now - startTime).TotalSeconds).ToString(); // 鐩稿樊绉掓暟
+            return ((long)(DateTime.Now - startTime).TotalMilliseconds).ToString(); // 鐩稿樊绉掓暟
+            //return ((long)(DateTime.Now - startTime).TotalSeconds).ToString(); // 鐩稿樊绉掓暟
         }
 
         /// <summary>
@@ -459,11 +514,25 @@
                     string str = string.Empty;
                     foreach (KeyValuePair<string, object> item in paramDictionary)
                     {
+                        //Value涓簄ull涓嶅弬鍔犳牎楠�
                         if (item.Value != null)
                         {
-                            str += item.Key + "=" + item.Value.ToString() + "&";
+                            //Value.ToString()涓簄ull鎴栬��""涔熶笉鍙傚姞鏍¢獙
+                            if (!string.IsNullOrEmpty(item.Value.ToString()))
+                            {
+                                //濡傛灉鏄痓ool绫诲瀷锛岃杞皬鍐�
+                                if (item.Value is bool)
+                                {
+                                    str += item.Key + "=" + item.Value.ToString().ToLower() + "&";
+                                }
+                                else
+                                {
+                                    str += item.Key + "=" + item.Value.ToString() + "&";
+                                }
+                            }
                         }
                     }
+
                     //2.3 鎷兼帴SECRET_KEY
                     str = str.Substring(0, str.Length - 1) + SECRET_KEY;
                     //2.4 MD5杞崲+杞皬鍐�
@@ -520,132 +589,4 @@
 
 
 
-}
-
-namespace Shared.Securitys
-{
-    /// <summary>
-    /// 
-    /// </summary>
-    public partial class EncryptionService
-    {
-        #region 鍔犲瘑
-        /// <summary>
-        /// 鍔犲瘑涓婚涓築ase64
-        /// </summary>
-        /// <param name="pToEncrypt"></param>
-        /// <param name="key"></param>
-        /// <returns></returns>
-        public static string AesEncryptTopic(string pToEncrypt, string key)
-        {
-            if (string.IsNullOrEmpty(pToEncrypt)) return null;
-            if (string.IsNullOrEmpty(key)) return pToEncrypt;
-            //闇�瑕佸姞瀵嗗唴瀹圭殑鏄庢枃娴�
-            Byte[] toEncryptArray = Encoding.UTF8.GetBytes(pToEncrypt);
-
-            //閰嶇疆AES鍔犲瘑Key(瀵嗛挜銆佸悜閲忋�佹ā寮忋�佸~鍏�)
-            RijndaelManaged rm = new RijndaelManaged
-            {
-                Key = Encoding.UTF8.GetBytes(key),
-                IV = Encoding.UTF8.GetBytes(key),
-                Mode = CipherMode.CBC,
-                Padding = PaddingMode.PKCS7
-            };
-
-            //鍒涘缓AES鍔犲瘑鍣ㄥ璞�
-            ICryptoTransform cTransform = rm.CreateEncryptor();
-
-            //浣跨敤AES灏嗘槑鏂囨祦杞垚瀵嗘枃瀛楄妭鏁扮粍
-            Byte[] resultArray = cTransform.TransformFinalBlock(toEncryptArray, 0, toEncryptArray.Length);
-
-            //灏咥ES鐢熸垚鐨勫瘑鏂囧瓧鑺傛暟缁勮浆鎴怋ase64瀛楃涓�
-            return Convert.ToBase64String(resultArray, 0, resultArray.Length);
-        }
-
-
-        /// <summary>
-        /// 鍔犲瘑璐熻浇涓轰簩杩涘埗娴�
-        /// </summary>
-        /// <param name="toEncryptArray"></param>
-        /// <param name="key"></param>
-        /// <returns></returns>
-        public static byte[] AesEncryptPayload(byte[] toEncryptArray, string key)
-        {
-            if (string.IsNullOrEmpty(key)) return toEncryptArray;
-            //閰嶇疆AES鍔犲瘑Key(瀵嗛挜銆佸悜閲忋�佹ā寮忋�佸~鍏�)
-            var rm = new RijndaelManaged
-            {
-                Key = Encoding.UTF8.GetBytes(key),
-                IV = Encoding.UTF8.GetBytes(key),
-                Mode = CipherMode.CBC,
-                Padding = PaddingMode.PKCS7
-            };
-
-            //鍒涘缓AES鍔犲瘑鍣ㄥ璞�
-            var cTransform = rm.CreateEncryptor();
-            //浣跨敤AES灏嗘槑鏂囨祦杞垚瀵嗘枃瀛楄妭鏁扮粍
-            return cTransform.TransformFinalBlock(toEncryptArray, 0, toEncryptArray.Length);
-        }
-        #endregion
-
-
-        #region 瑙e瘑
-        /// <summary>
-        /// 瑙e瘑涓婚鏁版嵁
-        /// </summary>
-        /// <param name="pToDecrypt"></param>
-        /// <param name="key"></param>
-        /// <returns></returns>
-        public static string AesDecryptTopic(string pToDecrypt, string key)
-        {
-            //AES瀵嗘枃Base64杞垚瀛楃涓�
-            Byte[] toEncryptArray = Convert.FromBase64String(pToDecrypt);
-
-            //閰嶇疆AES鍔犲瘑Key(瀵嗛挜銆佸悜閲忋�佹ā寮忋�佸~鍏�)
-            RijndaelManaged rm = new RijndaelManaged
-            {
-                Key = Encoding.UTF8.GetBytes(key),
-                IV = Encoding.UTF8.GetBytes(key),
-                Mode = CipherMode.CBC,
-                Padding = PaddingMode.PKCS7
-            };
-
-            //鍒涘缓AES瑙e瘑鍣ㄥ璞�
-            ICryptoTransform cTransform = rm.CreateDecryptor();
-
-            //浣跨敤AES灏嗗瘑鏂囨祦杞垚鏄庢枃鐨勫瓧鑺傛暟缁�
-            Byte[] resultArray = cTransform.TransformFinalBlock(toEncryptArray, 0, toEncryptArray.Length);
-
-            //杞垚瀛楃涓�
-            return Encoding.UTF8.GetString(resultArray);
-        }
-
-        /// <summary>
-        /// 閲囩敤Aes瑙e瘑璐熻浇鏁版嵁
-        /// </summary>
-        /// <param name="toEncryptArray"></param>
-        /// <param name="key"></param>
-        /// <returns></returns>
-        public static byte[] AesDecryptPayload(byte[] toEncryptArray, string key)
-        {
-            //閰嶇疆AES鍔犲瘑Key(瀵嗛挜銆佸悜閲忋�佹ā寮忋�佸~鍏�)
-            var rm = new RijndaelManaged
-            {
-                Key = Encoding.UTF8.GetBytes(key),
-                IV = Encoding.UTF8.GetBytes(key),
-                Mode = CipherMode.CBC,
-                Padding = PaddingMode.PKCS7
-            };
-
-            //鍒涘缓AES瑙e瘑鍣ㄥ璞�
-            var cTransform = rm.CreateDecryptor();
-
-            //浣跨敤AES灏嗗瘑鏂囨祦杞垚鏄庢枃鐨勫瓧鑺傛暟缁�
-            return cTransform.TransformFinalBlock(toEncryptArray, 0, toEncryptArray.Length);
-        }
-        #endregion
-
-
-
-    }
 }

--
Gitblit v1.8.0