From 6114886bd704d575a65f174e31311c8ae912ce99 Mon Sep 17 00:00:00 2001
From: yl <ykxkd@outlook.com>
Date: 星期二, 17 十月 2023 20:08:20 +0800
Subject: [PATCH] 1.APP登录接口 2.模具维修、维修验证功能接口 3.模具上机、模具下机功能接口 4.模具外借、模具归还功能接口
---
VueWebCoreApi/Controllers/LoginController.cs | 101 ++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 97 insertions(+), 4 deletions(-)
diff --git a/VueWebCoreApi/Controllers/LoginController.cs b/VueWebCoreApi/Controllers/LoginController.cs
index 8db4513..dd5eed9 100644
--- a/VueWebCoreApi/Controllers/LoginController.cs
+++ b/VueWebCoreApi/Controllers/LoginController.cs
@@ -24,13 +24,13 @@
private static readonly string Enterprise = AppSetting.GetAppSetting("Enterprise");
- #region[鐢ㄦ埛鐧诲綍(PC/APP)]
+ #region[鐢ㄦ埛鐧诲綍(PC)]
/// <summary>
- /// 鐢ㄦ埛鐧诲綍(PC/APP)
+ /// 鐢ㄦ埛鐧诲綍(PC)
/// </summary>
/// <param name="username">鐢ㄦ埛缂栫爜</param>
/// <param name="password">瀵嗙爜</param>
- /// <param name="usertype">鎿嶄綔绔被鍨�(PC APP)</param>
+ /// <param name="usertype">鎿嶄綔绔被鍨�(PC)</param>
/// <returns></returns>
[Route(template: "LoginSave")]
[HttpGet]
@@ -191,7 +191,7 @@
{
try
{
- var token = HttpContext.Request.Headers["Token"].ToString();
+ var token = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyY29kZSI6Ijk5OSIsInVzZXJuYW1lIjoi5rWL6K-V6LSm5Y-3Iiwic3RvcmdfY29kZSI6IlNDQjAxXzEiLCJzdG9yZ19uYW1lIjoi55Sf5Lqn5LiA6YOoIiwiaXNfc3lzdGVtX2FkbWluIjoiTiIsInJvbGVfY29kZSI6IlIyMzA4MjMwMiw5OTk5Iiwicm9sZV9kYXRhcGVybWlzc2lvbnMiOiIiLCJ1c2VydHlwZSI6IkFQUCIsInJlZGlza2V5IjoiTmV3TUVTTG9naW5Vc2VySURBUFA5OTkiLCJ0aW1lb3V0IjoiMjAyMy0xMC0xN1QxMjozMjozOC40NTYzMTE0KzA4OjAwIn0.BX_axVR1-IT3L5SP6D5o7EhPbdW9SbZcp55C3PYy5eE"; //HttpContext.Request.Headers["Token"].ToString();
User us = JwtTools.Denocode(token.ToString());
mes = LoginBLL.LoginMenu(usercode, usertype,us);
}
@@ -239,6 +239,99 @@
}
#endregion
+ #region[APP鐢ㄦ埛鐧诲綍]
+ /// <summary>
+ /// APP鐢ㄦ埛鐧诲綍
+ /// </summary>
+ /// <param name="username">鐢ㄦ埛缂栫爜</param>
+ /// <param name="password">瀵嗙爜</param>
+ /// <param name="usertype">鎿嶄綔绔被鍨�(APP)</param>
+ /// <returns></returns>
+ [Route(template: "LoginAppSave")]
+ [HttpGet]
+ public JsonResult LoginAppSave(string username, string password, string usertype)
+ {
+ try
+ {
+ Dictionary<string, object> payLoad = new Dictionary<string, object>();
+ mes = LoginBLL.LoginSearch(username, password);
+ if (mes.code == "200")
+ {
+ DataTable dt = (DataTable)mes.data;
+ //jwt鐢熸垚Token鍓嶇殑鐢ㄦ埛淇℃伅
+ payLoad.Add("usercode", dt.Rows[0]["usercode"].ToString());
+ payLoad.Add("username", dt.Rows[0]["username"].ToString());
+ payLoad.Add("storg_code", dt.Rows[0]["storg_code"].ToString());
+ payLoad.Add("storg_name", dt.Rows[0]["storg_name"].ToString());
+ payLoad.Add("is_system_admin", dt.Rows[0]["is_system_admin"].ToString());
+ payLoad.Add("role_code", dt.Rows[0]["role_code"].ToString());
+ payLoad.Add("role_datapermissions", dt.Rows[0]["role_datapermissions"].ToString());
+ payLoad.Add("usertype", usertype);
+ payLoad.Add("rediskey", Enterprise + "LoginUserID" + usertype + JwtTools.FindFirstKeyByValue(payLoad, "usercode"));
+ //鑾峰彇jwt鐢熸垚token
+ mes = JwtTools.Encode(payLoad);
+
+ List<User> mss = new List<User>();
+ User ms = new User();
+ ms.usercode = dt.Rows[0]["usercode"].ToString();
+ ms.username = dt.Rows[0]["username"].ToString();
+ ms.storg_code = dt.Rows[0]["storg_code"].ToString();
+ ms.storg_name = dt.Rows[0]["storg_name"].ToString();
+ ms.is_system_admin = dt.Rows[0]["is_system_admin"].ToString();
+ ms.role_code = dt.Rows[0]["role_code"].ToString();
+ ms.role_datapermissions = dt.Rows[0]["role_datapermissions"].ToString();
+ ms.usertype = usertype;
+ ms.rediskey = Enterprise + "LoginUserID" + ms.usertype + ms.usercode;
+ ms.token = mes.data.ToString();
+ mss.Add(ms);
+
+
+ User loginUser = JsonConvert.DeserializeObject<User>(JsonConvert.SerializeObject(ms));
+ //濡傛灉redis鐧诲綍鐢ㄦ埛涓笉瀛樺湪褰撳墠鐢ㄦ埛
+ if (redis.Get<User>(ms.rediskey, 0) == null)
+ {
+ //鍐欏叆redis(娉ㄦ剰锛歳edis绫婚噷闈㈢殑澶辨晥鏃堕棿蹇呴』鍦╧ey鍒涘缓瀹屾垚涔嬪悗鎵嶇敓鏁�)
+ redis.Set<User>(ms.rediskey, ms, redis.secondsTimeOut, 0);
+ //鍐欏叆鐧诲綍鎿嶄綔璁板綍
+ LogHelper.DbOperateLog(ms.usercode, "鐧诲綍", "鐧诲綍浜嗙郴缁�", ms.usertype);
+ mes.code = "200";
+ mes.Message = "鐧诲綍鎴愬姛!";
+ mes.data = ms.token.ToString();
+ }
+ else //濡傛灉瀛樺湪
+ {
+ //鑾峰彇redis涓綋鍓嶇敤鎴蜂俊鎭�
+ User r_loginUser = redis.Get<User>(ms.rediskey, 0);
+ //濡傛灉session涓殑鐢ㄦ埛usercode鍜宺edis涓殑鐢ㄦ埛usercode鍖归厤
+ if ((r_loginUser.rediskey).Equals(loginUser.rediskey))
+ {
+ redis.Remove(loginUser.rediskey, 0);//鍒犻櫎redis
+ redis.Set<User>(loginUser.rediskey, ms, redis.secondsTimeOut, 0);//鍐欏叆redis
+ }
+ else
+ {
+ //閲嶇疆杩囨湡鏃堕棿(娉ㄦ剰锛歳edis绫婚噷闈㈢殑澶辨晥鏃堕棿蹇呴』鍦╧ey鍒涘缓瀹屾垚涔嬪悗鎵嶇敓鏁�)
+ redis.Set<User>(loginUser.rediskey, loginUser, redis.secondsTimeOut, 0);
+ //鍐欏叆鐧诲綍鎿嶄綔璁板綍
+ LogHelper.DbOperateLog(ms.usercode, "鐧诲綍", "鐧诲綍浜嗙郴缁�", ms.usertype);
+ mes.data = ms;
+ mes.code = "200";
+ mes.Message = "鐧诲綍鎴愬姛!";
+ }
+ }
+ }
+ }
+ catch (Exception e)
+ {
+ mes.code = "300";
+ mes.Message = e.Message;
+ mes.data = null;
+ }
+
+ return Json(mes);
+ }
+ #endregion
+
#region[APP瀵嗙爜閲嶇疆]
/// <summary>
/// APP瀵嗙爜閲嶇疆
--
Gitblit v1.9.3