From b9f7560cbe0e562a40e9515a0559a3e951f0fee6 Mon Sep 17 00:00:00 2001
From: zhaowc <526854230@qq.com>
Date: 星期一, 07 四月 2025 09:16:01 +0800
Subject: [PATCH] 问题修改
---
Wms/WMS.BLL/SysServer/Token.cs | 93 ++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 92 insertions(+), 1 deletions(-)
diff --git a/Wms/WMS.BLL/SysServer/Token.cs b/Wms/WMS.BLL/SysServer/Token.cs
index b73c03f..d4458a1 100644
--- a/Wms/WMS.BLL/SysServer/Token.cs
+++ b/Wms/WMS.BLL/SysServer/Token.cs
@@ -59,7 +59,7 @@
};
#endregion
- #region 閫氳繃鎺ュ彛鍙戦�佽嚦erp 鎴� mes
+ #region 閫氳繃鎺ュ彛鍙戦�佽嚦mes
//绯荤粺瀵规帴鍚庢斁寮�
var jsonData = JsonConvert.SerializeObject(data);
@@ -67,6 +67,96 @@
var obj = JsonConvert.DeserializeObject<MesTokenModel>(response);//瑙f瀽杩斿洖鏁版嵁
+
+ if (obj.status != "success")
+ {
+ throw new Exception("涓婁紶澶辫触" + obj.message);
+ }
+ else
+ {
+ var token = obj.Data.token;
+ var expireTime = obj.Data.expire_time;
+ var time = DateTime.Now.AddMilliseconds(double.Parse(expireTime));
+ if (sysToken == null)//娣诲姞
+ {
+ var addToken = new SysToken()
+ {
+ SystemName = "MES",
+ Token = token,
+ ExpireTime = time,
+ CreateUser = 0
+ };
+ Db.Insertable(addToken).ExecuteCommand();
+ return token;
+ }
+ else //淇敼
+ {
+ sysToken.Token = token;
+ sysToken.ExpireTime = time;
+ sysToken.UpdateTime = DateTime.Now;
+ Db.Updateable(sysToken).ExecuteCommand();
+ return token;
+ }
+ }
+
+ #endregion
+ }
+ catch (Exception)
+ {
+ return "";
+ }
+ }
+
+ /// <summary>
+ /// 鑾峰彇璧嬬爜token浠ょ墝
+ /// </summary>
+ /// <param name="url">鑾峰彇璧嬬爜token浠ょ墝</param>
+ /// <returns></returns>
+ public string GetFuMaToken(string url)
+ {
+ try
+ {
+ var str = "";
+
+ //棣栧厛鍒ゆ柇绯荤粺鍐呮槸鍚︽湁token鍊硷紝鏁堟湡鏄惁澶辨晥
+ var sysToken = Db.Queryable<SysToken>().First(m => m.IsDel == "0" && m.SystemName == "FuMa");
+ if (sysToken != null && !string.IsNullOrWhiteSpace(sysToken.Token) && sysToken.ExpireTime > DateTime.Now)
+ {
+ str = sysToken.Token;
+ return str; //杩斿洖token鍊�
+ }
+ //return str;
+ #region 鑾峰彇鏂扮殑浠ょ墝
+ //瀵规帴鏃舵洿鏀硅矾寰�
+ var user = MesConfig.MesUser;
+ var pass = MesConfig.MesPassWord;
+ var secretKey = Md5Tools.CalcMd5(pass);
+ var nonce = Guid.NewGuid().ToString("N");
+ var timestamp = DateTimeOffset.Now.ToUnixTimeSeconds().ToString();
+
+ var info = new string[] { user, secretKey, nonce, timestamp };
+ Array.Sort(info, string.CompareOrdinal); //ASCII鎺掑簭
+ var miyao = string.Join("", info); //鏁扮粍杞崲鎴愬瓧绗︿覆
+ var sign = Md5Tools.CalcMd5(miyao); //绛惧悕
+
+ var data = new
+ {
+ user = user,
+ nonce = nonce,
+ timestamp = timestamp,
+ sign = sign,
+ jwt = true, //鏄惁杩斿洖JWT浠ょ墝
+ };
+ #endregion
+
+ #region 閫氳繃鎺ュ彛鍙戦�佽嚦璧嬬爜
+ //绯荤粺瀵规帴鍚庢斁寮�
+ var jsonData = JsonConvert.SerializeObject(data);
+
+ var response = HttpHelper.DoPost(url, jsonData, "FuMa鐢宠鑾峰彇浠ょ墝", "Fuma");
+
+ var obj = JsonConvert.DeserializeObject<MesTokenModel>(response);//瑙f瀽杩斿洖鏁版嵁
+
if (obj.status != "success")
{
throw new Exception("涓婁紶澶辫触" + obj.message);
@@ -105,5 +195,6 @@
return "";
}
}
+
}
}
--
Gitblit v1.8.0