From 8024ec8c0300dcffa0caf4e2a030e068a9051bc2 Mon Sep 17 00:00:00 2001
From: yl <ykxkd@outlook.com>
Date: 星期四, 18 一月 2024 09:08:31 +0800
Subject: [PATCH] 1.ServiceStack.Redis 依赖包变更为StackExchange.Redis

---
 VueWebCoreApi/Controllers/BasicSettingController.cs      |    2 
 VueWebCoreApi/DLL/BLL/WorkOrderBLL.cs                    |    7 
 VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs                    |   40 ++++
 VueWebCoreApi/Controllers/QualityManagementController.cs |    2 
 VueWebCoreApi/Controllers/MouldManagerController.cs      |    2 
 VueWebCoreApi/Controllers/DeviceManagerController.cs     |    2 
 VueWebCoreApi/Tools/ChannelActionFilterAttribute.cs      |    8 
 VueWebCoreApi/Controllers/AppPersonalController.cs       |    2 
 VueWebCoreApi/DLL/DAL/LoginDAL.cs                        |    4 
 VueWebCoreApi/Controllers/ErpSyncMesController.cs        |    2 
 VueWebCoreApi/VueWebCoreApi.csproj                       |    1 
 VueWebCoreApi/Controllers/GridReportController.cs        |    2 
 VueWebCoreApi/Controllers/SystemSettingController.cs     |    2 
 VueWebCoreApi/Controllers/KanBanManagerentController.cs  |    2 
 VueWebCoreApi/Tools/ChannelActionFilterAttributeApp.cs   |    2 
 VueWebCoreApi/Tools/RedisCommon.cs                       |  309 ++++++++++++++++++++++++++++++++++++++
 VueWebCoreApi/Controllers/GeneralBasicDataController.cs  |    2 
 VueWebCoreApi/Controllers/ProductModelController.cs      |    2 
 VueWebCoreApi/Controllers/AppAnalyticsController.cs      |    2 
 VueWebCoreApi/Controllers/WorkOrderController.cs         |   20 ++
 VueWebCoreApi/Controllers/ReportManagerController.cs     |    2 
 VueWebCoreApi/Controllers/LoginController.cs             |   30 +-
 22 files changed, 408 insertions(+), 39 deletions(-)

diff --git a/VueWebCoreApi/Controllers/AppAnalyticsController.cs b/VueWebCoreApi/Controllers/AppAnalyticsController.cs
index 515e6cb..f45bad9 100644
--- a/VueWebCoreApi/Controllers/AppAnalyticsController.cs
+++ b/VueWebCoreApi/Controllers/AppAnalyticsController.cs
@@ -16,7 +16,7 @@
     {
         //瀹氫箟鍏ㄥ眬淇℃伅杩斿洖鍙橀噺
         ToMessage mes = new ToMessage();
-        RedisHelper redis = new RedisHelper();
+        RedisCommon redis = new RedisCommon();
 
         #region[App鐢熶骇鐪嬫澘]
         /// <summary>
diff --git a/VueWebCoreApi/Controllers/AppPersonalController.cs b/VueWebCoreApi/Controllers/AppPersonalController.cs
index 4c576a3..041856d 100644
--- a/VueWebCoreApi/Controllers/AppPersonalController.cs
+++ b/VueWebCoreApi/Controllers/AppPersonalController.cs
@@ -16,7 +16,7 @@
     {
         //瀹氫箟鍏ㄥ眬淇℃伅杩斿洖鍙橀噺
         ToMessage mes = new ToMessage();
-        RedisHelper redis = new RedisHelper();
+        RedisCommon redis = new RedisCommon();
 
         #region[App涓汉璁′欢宸ヨ祫]
         /// <summary>
diff --git a/VueWebCoreApi/Controllers/BasicSettingController.cs b/VueWebCoreApi/Controllers/BasicSettingController.cs
index bdd966d..093f5df 100644
--- a/VueWebCoreApi/Controllers/BasicSettingController.cs
+++ b/VueWebCoreApi/Controllers/BasicSettingController.cs
@@ -23,7 +23,7 @@
     {
         //瀹氫箟鍏ㄥ眬淇℃伅杩斿洖鍙橀噺
         ToMessage mes = new ToMessage();
-        RedisHelper redis = new RedisHelper();
+        RedisCommon redis = new RedisCommon();
 
         #region[缁勭粐鏋舵瀯,鏌ヨ缁勭粐淇℃伅]
         /// <summary>
diff --git a/VueWebCoreApi/Controllers/DeviceManagerController.cs b/VueWebCoreApi/Controllers/DeviceManagerController.cs
index 5b32f7e..9f16881 100644
--- a/VueWebCoreApi/Controllers/DeviceManagerController.cs
+++ b/VueWebCoreApi/Controllers/DeviceManagerController.cs
@@ -18,7 +18,7 @@
     {
         //瀹氫箟鍏ㄥ眬淇℃伅杩斿洖鍙橀噺
         ToMessage mes = new ToMessage();
-        RedisHelper redis = new RedisHelper();
+        RedisCommon redis = new RedisCommon();
 
         #region[璁惧绫诲瀷鏌ヨ]
         /// <summary>
diff --git a/VueWebCoreApi/Controllers/ErpSyncMesController.cs b/VueWebCoreApi/Controllers/ErpSyncMesController.cs
index a516e16..ba332ce 100644
--- a/VueWebCoreApi/Controllers/ErpSyncMesController.cs
+++ b/VueWebCoreApi/Controllers/ErpSyncMesController.cs
@@ -17,7 +17,7 @@
     {
         //瀹氫箟鍏ㄥ眬淇℃伅杩斿洖鍙橀噺
         ToMessage mes = new ToMessage();
-        RedisHelper redis = new RedisHelper();
+        RedisCommon redis = new RedisCommon();
 
         #region[鐗╂枡绠$悊锛氳閲忓崟浣嶅悓姝
         /// <summary>
diff --git a/VueWebCoreApi/Controllers/GeneralBasicDataController.cs b/VueWebCoreApi/Controllers/GeneralBasicDataController.cs
index 4bfa980..ef96945 100644
--- a/VueWebCoreApi/Controllers/GeneralBasicDataController.cs
+++ b/VueWebCoreApi/Controllers/GeneralBasicDataController.cs
@@ -15,7 +15,7 @@
     {
         //瀹氫箟鍏ㄥ眬淇℃伅杩斿洖鍙橀噺
         ToMessage mes = new ToMessage();
-        RedisHelper redis = new RedisHelper();
+        RedisCommon redis = new RedisCommon();
 
         #region[缁勭粐鏋舵瀯鍩虹璧勬枡]
         /// <summary>
diff --git a/VueWebCoreApi/Controllers/GridReportController.cs b/VueWebCoreApi/Controllers/GridReportController.cs
index c7953ed..c3fdee0 100644
--- a/VueWebCoreApi/Controllers/GridReportController.cs
+++ b/VueWebCoreApi/Controllers/GridReportController.cs
@@ -18,7 +18,7 @@
     {
         //瀹氫箟鍏ㄥ眬淇℃伅杩斿洖鍙橀噺
         ToMessage mes = new ToMessage();
-        RedisHelper redis = new RedisHelper();
+        RedisCommon redis = new RedisCommon();
 
         #region[MES宸ュ崟鎵撳嵃1]
         /// <summary>
diff --git a/VueWebCoreApi/Controllers/KanBanManagerentController.cs b/VueWebCoreApi/Controllers/KanBanManagerentController.cs
index 624d19b..942d390 100644
--- a/VueWebCoreApi/Controllers/KanBanManagerentController.cs
+++ b/VueWebCoreApi/Controllers/KanBanManagerentController.cs
@@ -15,7 +15,7 @@
     {
         //瀹氫箟鍏ㄥ眬淇℃伅杩斿洖鍙橀噺
         ToMessage mes = new ToMessage();
-        RedisHelper redis = new RedisHelper();
+        RedisCommon redis = new RedisCommon();
 
         #region[杞﹂棿鐪嬫澘,涓婄敓浜т俊鎭痌
         /// <summary>
diff --git a/VueWebCoreApi/Controllers/LoginController.cs b/VueWebCoreApi/Controllers/LoginController.cs
index 13acbec..89aced1 100644
--- a/VueWebCoreApi/Controllers/LoginController.cs
+++ b/VueWebCoreApi/Controllers/LoginController.cs
@@ -19,7 +19,7 @@
     {
         //瀹氫箟鍏ㄥ眬淇℃伅杩斿洖鍙橀噺
         ToMessage mes = new ToMessage();
-        RedisHelper redis = new RedisHelper();
+        RedisCommon redis = new RedisCommon();
         //鑾峰彇浼佷笟閰嶇疆Enterprise
         private static readonly string Enterprise = AppSetting.GetAppSetting("Enterprise");
 
@@ -73,10 +73,10 @@
 
                     User loginUser = JsonConvert.DeserializeObject<User>(JsonConvert.SerializeObject(ms));
                     //濡傛灉redis鐧诲綍鐢ㄦ埛涓笉瀛樺湪褰撳墠鐢ㄦ埛
-                    if (redis.Get<User>(ms.rediskey, 0) == null)
+                    if (redis.GetStringKey<User>(ms.rediskey) == null)
                     {
                         //鍐欏叆redis(娉ㄦ剰锛歳edis绫婚噷闈㈢殑澶辨晥鏃堕棿蹇呴』鍦╧ey鍒涘缓瀹屾垚涔嬪悗鎵嶇敓鏁�)
-                        redis.Set<User>(ms.rediskey, ms, redis.secondsTimeOut, 0);
+                        redis.SetStringKey<User>(ms.rediskey, ms, TimeSpan.FromSeconds(redis.secondsTimeOut));
                         //鍐欏叆鐧诲綍鎿嶄綔璁板綍 
                         LogHelper.DbOperateLog(ms.usercode, "鐧诲綍", "鐧诲綍浜嗙郴缁�", ms.usertype);
                         mes.code = "200";
@@ -86,7 +86,7 @@
                     else //濡傛灉瀛樺湪
                     {
                         //鑾峰彇redis涓綋鍓嶇敤鎴蜂俊鎭�
-                        User r_loginUser = redis.Get<User>(ms.rediskey, 0);
+                        User r_loginUser = redis.GetStringKey<User>(ms.rediskey);
                         //濡傛灉session涓殑鐢ㄦ埛usercode鍜宺edis涓殑鐢ㄦ埛usercode鍖归厤
                         if ((r_loginUser.rediskey).Equals(loginUser.rediskey))
                         {
@@ -97,7 +97,7 @@
                         else
                         {
                             //閲嶇疆杩囨湡鏃堕棿(娉ㄦ剰锛歳edis绫婚噷闈㈢殑澶辨晥鏃堕棿蹇呴』鍦╧ey鍒涘缓瀹屾垚涔嬪悗鎵嶇敓鏁�)
-                            redis.Set<User>(loginUser.rediskey, loginUser, redis.secondsTimeOut, 0);
+                            redis.SetStringKey<User>(loginUser.rediskey, loginUser, TimeSpan.FromSeconds(redis.secondsTimeOut));
                             //鍐欏叆鐧诲綍鎿嶄綔璁板綍
                             LogHelper.DbOperateLog(ms.usercode, "鐧诲綍", "鐧诲綍浜嗙郴缁�", ms.usertype);
                             mes.data = ms;
@@ -150,13 +150,13 @@
                         }
                     });
                     bool aa = DapperHelper.DoTransaction(list);
-                    redis.Remove(us.rediskey, 0);//鍒犻櫎redis
-                    redis.Set<User>(us.rediskey, us, redis.secondsTimeOut, 0);//鍐欏叆redis
+                    redis.KeyDelete(us.rediskey);//鍒犻櫎redis
+                    redis.SetStringKey<User>(us.rediskey, us, TimeSpan.FromSeconds(redis.secondsTimeOut));//鍐欏叆redis
                 }
                 else
                 {
-                    redis.Remove(us.rediskey, 0);//鍒犻櫎redis
-                    redis.Set<User>(us.rediskey, us, redis.secondsTimeOut, 0);//鍐欏叆redis
+                    redis.KeyDelete(us.rediskey);//鍒犻櫎redis
+                    redis.SetStringKey<User>(us.rediskey, us, TimeSpan.FromSeconds(redis.secondsTimeOut));//鍐欏叆redis
                 }
                 //鍐欏叆鏃ュ織
                 LogHelper.DbOperateLog(us.usercode, "寮哄埗涓嬬嚎", "琚己鍒朵笅绾夸簡", us.usertype);
@@ -288,10 +288,10 @@
 
                     User loginUser = JsonConvert.DeserializeObject<User>(JsonConvert.SerializeObject(ms));
                     //濡傛灉redis鐧诲綍鐢ㄦ埛涓笉瀛樺湪褰撳墠鐢ㄦ埛
-                    if (redis.Get<User>(ms.rediskey, 0) == null)
+                    if (redis.GetStringKey<User>(ms.rediskey) == null)
                     {
                         //鍐欏叆redis(娉ㄦ剰锛歳edis绫婚噷闈㈢殑澶辨晥鏃堕棿蹇呴』鍦╧ey鍒涘缓瀹屾垚涔嬪悗鎵嶇敓鏁�)
-                        redis.Set<User>(ms.rediskey, ms, redis.secondsTimeOut, 0);
+                        redis.SetStringKey<User>(ms.rediskey, ms, TimeSpan.FromSeconds(redis.secondsTimeOut));
                         //鍐欏叆鐧诲綍鎿嶄綔璁板綍 
                         LogHelper.DbOperateLog(ms.usercode, "鐧诲綍", "鐧诲綍浜嗙郴缁�", ms.usertype);
                         mes.code = "200";
@@ -301,17 +301,17 @@
                     else //濡傛灉瀛樺湪
                     {
                         //鑾峰彇redis涓綋鍓嶇敤鎴蜂俊鎭�
-                        User r_loginUser = redis.Get<User>(ms.rediskey, 0);
+                        User r_loginUser = redis.GetStringKey<User>(ms.rediskey);
                         //濡傛灉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
+                            redis.KeyDelete(loginUser.rediskey);//鍒犻櫎redis
+                            redis.SetStringKey<User>(loginUser.rediskey, ms, TimeSpan.FromSeconds(redis.secondsTimeOut));//鍐欏叆redis
                         }
                         else
                         {
                             //閲嶇疆杩囨湡鏃堕棿(娉ㄦ剰锛歳edis绫婚噷闈㈢殑澶辨晥鏃堕棿蹇呴』鍦╧ey鍒涘缓瀹屾垚涔嬪悗鎵嶇敓鏁�)
-                            redis.Set<User>(loginUser.rediskey, loginUser, redis.secondsTimeOut, 0);
+                            redis.SetStringKey<User>(loginUser.rediskey, loginUser, TimeSpan.FromSeconds(redis.secondsTimeOut));
                             //鍐欏叆鐧诲綍鎿嶄綔璁板綍
                             LogHelper.DbOperateLog(ms.usercode, "鐧诲綍", "鐧诲綍浜嗙郴缁�", ms.usertype);
                             mes.data = ms;
diff --git a/VueWebCoreApi/Controllers/MouldManagerController.cs b/VueWebCoreApi/Controllers/MouldManagerController.cs
index 3498003..bde517c 100644
--- a/VueWebCoreApi/Controllers/MouldManagerController.cs
+++ b/VueWebCoreApi/Controllers/MouldManagerController.cs
@@ -20,7 +20,7 @@
     {
         //瀹氫箟鍏ㄥ眬淇℃伅杩斿洖鍙橀噺
         ToMessage mes = new ToMessage();
-        RedisHelper redis = new RedisHelper();
+        RedisCommon redis = new RedisCommon();
 
         #region[妯″叿娓呭崟鍒楄〃鏌ヨ]
         /// <summary>
diff --git a/VueWebCoreApi/Controllers/ProductModelController.cs b/VueWebCoreApi/Controllers/ProductModelController.cs
index de57fc0..9034a5e 100644
--- a/VueWebCoreApi/Controllers/ProductModelController.cs
+++ b/VueWebCoreApi/Controllers/ProductModelController.cs
@@ -19,7 +19,7 @@
     {
         //瀹氫箟鍏ㄥ眬淇℃伅杩斿洖鍙橀噺
         ToMessage mes = new ToMessage();
-        RedisHelper redis = new RedisHelper();
+        RedisCommon redis = new RedisCommon();
 
         #region[璁¢噺鍗曚綅缁勪俊鎭痌
         /// <summary>
diff --git a/VueWebCoreApi/Controllers/QualityManagementController.cs b/VueWebCoreApi/Controllers/QualityManagementController.cs
index 994e741..4db3704 100644
--- a/VueWebCoreApi/Controllers/QualityManagementController.cs
+++ b/VueWebCoreApi/Controllers/QualityManagementController.cs
@@ -18,7 +18,7 @@
     {
         //瀹氫箟鍏ㄥ眬淇℃伅杩斿洖鍙橀噺
         ToMessage mes = new ToMessage();
-        RedisHelper redis = new RedisHelper();
+        RedisCommon redis = new RedisCommon();
 
         #region[璐ㄩ噺绠$悊,缂洪櫡瀹氫箟鏌ヨ鍒楄〃]
         /// <summary>
diff --git a/VueWebCoreApi/Controllers/ReportManagerController.cs b/VueWebCoreApi/Controllers/ReportManagerController.cs
index 17ed30b..295a109 100644
--- a/VueWebCoreApi/Controllers/ReportManagerController.cs
+++ b/VueWebCoreApi/Controllers/ReportManagerController.cs
@@ -17,7 +17,7 @@
     {
         //瀹氫箟鍏ㄥ眬淇℃伅杩斿洖鍙橀噺
         ToMessage mes = new ToMessage();
-        RedisHelper redis = new RedisHelper();
+        RedisCommon redis = new RedisCommon();
 
         #region[鐢熶骇杩涘害鎶ヨ〃]
         /// <summary>
diff --git a/VueWebCoreApi/Controllers/SystemSettingController.cs b/VueWebCoreApi/Controllers/SystemSettingController.cs
index fa5384d..7805e65 100644
--- a/VueWebCoreApi/Controllers/SystemSettingController.cs
+++ b/VueWebCoreApi/Controllers/SystemSettingController.cs
@@ -18,7 +18,7 @@
     {
         //瀹氫箟鍏ㄥ眬淇℃伅杩斿洖鍙橀噺
         ToMessage mes = new ToMessage();
-        RedisHelper redis = new RedisHelper();
+        RedisCommon redis = new RedisCommon();
 
         #region[缂栫爜瑙勫垯鑾峰彇鍙缃殑鍔熻兘鑿滃崟淇℃伅]
         /// <summary>
diff --git a/VueWebCoreApi/Controllers/WorkOrderController.cs b/VueWebCoreApi/Controllers/WorkOrderController.cs
index ec43071..029e753 100644
--- a/VueWebCoreApi/Controllers/WorkOrderController.cs
+++ b/VueWebCoreApi/Controllers/WorkOrderController.cs
@@ -24,7 +24,7 @@
     {
         //瀹氫箟鍏ㄥ眬淇℃伅杩斿洖鍙橀噺
         ToMessage mes = new ToMessage();
-        RedisHelper redis = new RedisHelper();
+        RedisCommon redis = new RedisCommon();
 
         #region[ERP璁㈠崟鏌ヨ]
         /// <summary>
@@ -282,6 +282,24 @@
         }
         #endregion
 
+        #region[MES宸ュ崟鏌ユ壘鍘嗗彶寮曠敤鏈�鏂板伐搴忎俊鎭痌
+        /// <summary>
+        /// MES宸ュ崟鏌ユ壘鍘嗗彶寮曠敤鏈�鏂板伐搴忎俊鎭�
+        /// </summary>
+        /// <param name="wkshopcode">杞﹂棿缂栫爜</param>
+        /// <param name="partcode">浜у搧缂栫爜</param>
+        /// <returns></returns>
+        [Route(template: "MesOrderNewStepContent")]
+        [HttpPost]
+        public JsonResult MesOrderNewStepContent(string wkshopcode, string partcode)
+        {
+            var token = HttpContext.Request.Headers["Token"].ToString();
+            User us = JwtTools.Denocode(token.ToString());
+            mes = WorkOrderBLL.MesOrderNewStepContent(wkshopcode, partcode, us);
+            return Json(mes);
+        }
+        #endregion
+
 
         #region[MES宸ュ崟娲惧彂鎻愪氦]
         /// <summary>
diff --git a/VueWebCoreApi/DLL/BLL/WorkOrderBLL.cs b/VueWebCoreApi/DLL/BLL/WorkOrderBLL.cs
index 97d5c44..19f5d56 100644
--- a/VueWebCoreApi/DLL/BLL/WorkOrderBLL.cs
+++ b/VueWebCoreApi/DLL/BLL/WorkOrderBLL.cs
@@ -95,6 +95,13 @@
         }
         #endregion
 
+        #region[MES宸ュ崟鏌ユ壘鍘嗗彶寮曠敤鏈�鏂板伐搴忎俊鎭痌
+        public static ToMessage MesOrderNewStepContent(string wkshopcode, string partcode, User us)
+        {
+            return WorkOrderDAL.MesOrderNewStepContent(wkshopcode, partcode, us);
+        }
+        #endregion
+
 
         #region[MES宸ュ崟娲惧彂鎻愪氦]
         public static ToMessage MesOrderDistribution(string[] wocodelist, User us)
diff --git a/VueWebCoreApi/DLL/DAL/LoginDAL.cs b/VueWebCoreApi/DLL/DAL/LoginDAL.cs
index 1cd5223..edaf450 100644
--- a/VueWebCoreApi/DLL/DAL/LoginDAL.cs
+++ b/VueWebCoreApi/DLL/DAL/LoginDAL.cs
@@ -384,11 +384,11 @@
         #region[鐧诲嚭]
         public static ToMessage LoginOut(User us)
         {
-            RedisHelper redis = new RedisHelper();
+            RedisCommon redis = new RedisCommon();
             try
             {
                 //鍒犻櫎redis
-                redis.Remove(Enterprise + "LoginUserID" + us.usertype + us.usercode, 0);
+                redis.KeyDelete(Enterprise + "LoginUserID" + us.usertype + us.usercode);
                 //鍐欏叆鏃ュ織
                 LogHelper.DbOperateLog(us.usercode, "閫�鍑�", "閫�鍑轰簡绯荤粺", us.usertype);
                 mes.code = "200";
diff --git a/VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs b/VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs
index 0d6e9a3..1ac607b 100644
--- a/VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs
+++ b/VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs
@@ -27,7 +27,7 @@
 
 
         #region[ERP璁㈠崟鏌ヨ]
-        public static ToMessage ErpOrderSearch(string erporderstus,string wkshopcode, string erpordercode, string saleordercode, string partcode, string partname, string partspec, int startNum, string paydatestartdate, string paydateenddate, string paydatestartdate1, string paydateenddate2, string creatuser, int endNum, string prop, string order)
+        public static ToMessage ErpOrderSearch(string erporderstus, string wkshopcode, string erpordercode, string saleordercode, string partcode, string partname, string partspec, int startNum, string paydatestartdate, string paydateenddate, string paydatestartdate1, string paydateenddate2, string creatuser, int endNum, string prop, string order)
         {
             var dynamicParams = new DynamicParameters();
             string search = "";
@@ -510,7 +510,7 @@
 
 
         #region[MES宸ュ崟鏌ヨ]
-        public static ToMessage MesOrderSearch(string mesorderstus,string wkshopcode, string mesordercode, string sourceorder, string saleordercode, string ordertype, string partcode, string partname, string partspec, int startNum, string creatuser, string createdate, int endNum, string prop, string order)
+        public static ToMessage MesOrderSearch(string mesorderstus, string wkshopcode, string mesordercode, string sourceorder, string saleordercode, string ordertype, string partcode, string partname, string partspec, int startNum, string creatuser, string createdate, int endNum, string prop, string order)
         {
             var dynamicParams = new DynamicParameters();
             string search = "";
@@ -1034,6 +1034,40 @@
         }
         #endregion
 
+        #region[MES宸ュ崟鏌ユ壘鍘嗗彶寮曠敤鏈�鏂板伐搴忎俊鎭痌
+        public static ToMessage MesOrderNewStepContent(string wkshopcode, string partcode, User us)
+        {
+            var sql = "";
+            List<object> list = new List<object>();
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                //MES宸ュ崟鏌ユ壘鍘嗗彶寮曠敤鏈�鏂板伐搴忎俊鎭�
+                sql = @"select S.wo_code,S.seq,S.step_code,S.stepprice,isbott,isend   from (
+                        select top 1 wo_code   from TK_Wrk_Man  
+                        where wkshp_code=@wkshopcode and materiel_code=@partcode
+                        order by lm_date desc
+                        ) as A
+                        inner join TK_Wrk_Step S on A.wo_code=S.wo_code";
+                dynamicParams.Add("@wkshopcode", wkshopcode);
+                dynamicParams.Add("@partcode", partcode);
+                var data = DapperHelper.selectdata(sql, dynamicParams);
+                mes.code = "200";
+                mes.count = data.Rows.Count;
+                mes.data = data;
+                mes.message = "鏌ヨ鎴愬姛!";
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
 
         #region[MES宸ュ崟娲惧彂鎻愪氦]
         public static ToMessage MesOrderDistribution(string[] wocodelist, User us)
@@ -1096,7 +1130,7 @@
 
 
         #region[宸ュ崟鍏抽棴鍒楄〃鏌ヨ]
-        public static ToMessage MesOrderClosedSearch(string mesorderstus,string wkshopcode, string mesordercode, string sourceorder, string saleordercode, string ordertype, string partcode, string partname, string partspec, int startNum, string creatuser, string createdate, int endNum, string prop, string order)
+        public static ToMessage MesOrderClosedSearch(string mesorderstus, string wkshopcode, string mesordercode, string sourceorder, string saleordercode, string ordertype, string partcode, string partname, string partspec, int startNum, string creatuser, string createdate, int endNum, string prop, string order)
         {
             var dynamicParams = new DynamicParameters();
             string search = "";
diff --git a/VueWebCoreApi/Tools/ChannelActionFilterAttribute.cs b/VueWebCoreApi/Tools/ChannelActionFilterAttribute.cs
index 5c9ae27..09ebf74 100644
--- a/VueWebCoreApi/Tools/ChannelActionFilterAttribute.cs
+++ b/VueWebCoreApi/Tools/ChannelActionFilterAttribute.cs
@@ -15,7 +15,7 @@
     public class ChannelActionFilterAttribute: ActionFilterAttribute
     {
         ToMessage mes = new ToMessage();
-        RedisHelper redis = new RedisHelper();
+        RedisCommon redis = new RedisCommon();
 
         /// <summary>
         /// 鍦ˋction鎵ц鍓嶆墽琛�
@@ -30,10 +30,10 @@
                 User us = JwtTools.Denocode(token.ToString());
                 base.OnActionExecuting(context);
                 //濡傛灉瀛樺湪          
-                if (redis.Get<User>(us.rediskey, 0) !=null)
+                if (redis.GetStringKey<User>(us.rediskey) !=null)
                 {
                     //鑾峰彇redis涓綋鍓嶇敤鎴蜂俊鎭�
-                    User r_loginUser = redis.Get<User>(us.rediskey, 0);
+                    User r_loginUser = redis.GetStringKey<User>(us.rediskey);
                     if (token != r_loginUser.token)
                     {
                         mes.code = "303";
@@ -44,7 +44,7 @@
                     else 
                     {
                         //閲嶇疆杩囨湡鏃堕棿
-                        redis.KeyExpire(us.rediskey, redis.secondsTimeOut);
+                        redis.SetExpire(us.rediskey, redis.secondsTimeOut);
                     }
                 }
                 else //濡傛灉redis鐧诲綍鐢ㄦ埛涓笉瀛樺湪褰撳墠鐢ㄦ埛
diff --git a/VueWebCoreApi/Tools/ChannelActionFilterAttributeApp.cs b/VueWebCoreApi/Tools/ChannelActionFilterAttributeApp.cs
index 4ec6258..a64b6f4 100644
--- a/VueWebCoreApi/Tools/ChannelActionFilterAttributeApp.cs
+++ b/VueWebCoreApi/Tools/ChannelActionFilterAttributeApp.cs
@@ -11,7 +11,7 @@
     public class ChannelActionFilterAttributeApp : ActionFilterAttribute
     {
         ToMessage mes = new ToMessage();
-        RedisHelper redis = new RedisHelper();
+        RedisCommon redis = new RedisCommon();
 
         /// <summary>
         /// 鍦ˋction鎵ц鍓嶆墽琛�
diff --git a/VueWebCoreApi/Tools/RedisCommon.cs b/VueWebCoreApi/Tools/RedisCommon.cs
new file mode 100644
index 0000000..ad51736
--- /dev/null
+++ b/VueWebCoreApi/Tools/RedisCommon.cs
@@ -0,0 +1,309 @@
+锘縰sing Newtonsoft.Json;
+using StackExchange.Redis;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Threading.Tasks;
+
+namespace VueWebCoreApi.Tools
+{
+    public class RedisCommon
+    {
+        //public static ILogger Log = UtilLogger<RedisCommon>.Log;//鏃ュ織璁板綍
+        //redis鏁版嵁搴撹繛鎺ュ瓧绗︿覆
+        private static readonly string RedisIpConnString = AppSetting.GetAppSetting("RedisConnIp");
+        private static readonly string RedisPortConnString = AppSetting.GetAppSetting("RedisConnPort");
+        private static readonly string RedisKeyTimeCont = AppSetting.GetAppSetting("RedisKeyTimeCont");
+
+
+        private string _conn = RedisIpConnString+":"+RedisPortConnString;
+        private int _db = 0;
+        //榛樿缂撳瓨杩囨湡鏃堕棿鍗曚綅绉�  
+        public int secondsTimeOut = Convert.ToInt32(RedisKeyTimeCont);
+        //闈欐�佸彉閲� 淇濊瘉鍚勬ā鍧椾娇鐢ㄧ殑鏄笉鍚屽疄渚嬬殑鐩稿悓閾炬帴
+        private static ConnectionMultiplexer connection;
+        public RedisCommon() { }
+
+        /// <summary>
+        /// 鏋勯�犲嚱鏁�
+        /// </summary>
+        /// <param name="db"></param>
+        /// <param name="connectStr"></param>
+        public RedisCommon(int db, string connectStr)
+        {
+            _conn = connectStr;
+            _db = db;
+        }
+
+        /// <summary>
+        /// 缂撳瓨鏁版嵁搴擄紝鏁版嵁搴撹繛鎺�
+        /// </summary>
+        public ConnectionMultiplexer CacheConnection
+        {
+            get
+            {
+                try
+                {
+                    if (connection == null || !connection.IsConnected)
+                    {
+                        connection = new Lazy<ConnectionMultiplexer>(() => ConnectionMultiplexer.Connect(_conn)).Value;
+                    }
+                }
+                catch (Exception ex)
+                {
+                    //Log.LogError("RedisHelper->CacheConnection 鍑洪敊\r\n" + ex.ToString());
+                    return null;
+                }
+                return connection;
+            }
+        }
+
+        /// <summary>
+        /// 缂撳瓨鏁版嵁搴�
+        /// </summary>
+        public IDatabase CacheRedis => CacheConnection.GetDatabase(_db);
+
+        #region --KEY/VALUE瀛樺彇--
+
+        /// <summary>
+        /// 鍗曟潯瀛樺��
+        /// </summary>
+        /// <param name="key">key</param>
+        /// <param name="value">The value.</param>
+        /// <returns><c>true</c> if XXXX, <c>false</c> otherwise.</returns>
+        public bool StringSet(string key, string value)
+        {
+            return CacheRedis.StringSet(key, value);
+        }
+
+        /// <summary>
+        /// 淇濆瓨鍗曚釜key value
+        /// </summary>
+        /// <param name="key">Redis Key</param>
+        /// <param name="value">淇濆瓨鐨勫��</param>
+        /// <param name="expiry">杩囨湡鏃堕棿</param>
+        /// <returns></returns>
+        public bool StringSet(string key, string value, TimeSpan? expiry = default(TimeSpan?))
+        {
+            return CacheRedis.StringSet(key, value, expiry);
+        }
+
+        /// <summary>
+        /// 淇濆瓨澶氫釜key value
+        /// </summary>
+        /// <param name="arr">key</param>
+        /// <returns></returns>
+        public bool StringSet(KeyValuePair<RedisKey, RedisValue>[] arr)
+        {
+            return CacheRedis.StringSet(arr);
+        }
+
+        /// <summary>
+        /// 鎵归噺瀛樺��
+        /// </summary>
+        /// <param name="keysStr">key</param>
+        /// <param name="valuesStr">The value.</param>
+        /// <returns><c>true</c> if XXXX, <c>false</c> otherwise.</returns>
+        public bool StringSetMany(string[] keysStr, string[] valuesStr)
+        {
+            var count = keysStr.Length;
+            var keyValuePair = new KeyValuePair<RedisKey, RedisValue>[count];
+            for (int i = 0; i < count; i++)
+            {
+                keyValuePair[i] = new KeyValuePair<RedisKey, RedisValue>(keysStr[i], valuesStr[i]);
+            }
+
+            return CacheRedis.StringSet(keyValuePair);
+        }
+
+        /// <summary>
+        /// 淇濆瓨涓�涓璞�
+        /// </summary>
+        /// <typeparam name="T"></typeparam>
+        /// <param name="key"></param>
+        /// <param name="obj"></param>
+        /// <returns></returns>
+        public bool SetStringKey<T>(string key, T obj, TimeSpan? expiry = default(TimeSpan?))
+        {
+            string json = JsonConvert.SerializeObject(obj);
+            return CacheRedis.StringSet(key, json, expiry);
+        }
+
+        /// <summary>
+        /// 杩藉姞鍊�
+        /// </summary>
+        /// <param name="key"></param>
+        /// <param name="value"></param>
+        public void StringAppend(string key, string value)
+        {
+            ////杩藉姞鍊硷紝杩斿洖杩藉姞鍚庨暱搴�
+            long appendlong = CacheRedis.StringAppend(key, value);
+        }
+
+        /// <summary>
+        /// 鑾峰彇鍗曚釜key鐨勫��
+        /// </summary>
+        /// <param name="key">Redis Key</param>
+        /// <returns></returns>
+        public RedisValue GetStringKey(string key)
+        {
+            return CacheRedis.StringGet(key);
+        }
+
+        /// <summary>
+        /// 鏍规嵁Key鑾峰彇鍊�
+        /// </summary>
+        /// <param name="key">閿��</param>
+        /// <returns>System.String.</returns>
+        public string StringGet(string key)
+        {
+            try
+            {
+                return CacheRedis.StringGet(key);
+            }
+            catch (Exception ex)
+            {
+                //Log.LogError("RedisHelper->StringGet 鍑洪敊\r\n" + ex.ToString());
+                return null;
+            }
+        }
+
+        /// <summary>
+        /// 鑾峰彇澶氫釜Key
+        /// </summary>
+        /// <param name="listKey">Redis Key闆嗗悎</param>
+        /// <returns></returns>
+        public RedisValue[] GetStringKey(List<RedisKey> listKey)
+        {
+            return CacheRedis.StringGet(listKey.ToArray());
+        }
+
+        /// <summary>
+        /// 鎵归噺鑾峰彇鍊�
+        /// </summary>
+        public string[] StringGetMany(string[] keyStrs)
+        {
+            var count = keyStrs.Length;
+            var keys = new RedisKey[count];
+            var addrs = new string[count];
+
+            for (var i = 0; i < count; i++)
+            {
+                keys[i] = keyStrs[i];
+            }
+            try
+            {
+
+                var values = CacheRedis.StringGet(keys);
+                for (var i = 0; i < values.Length; i++)
+                {
+                    addrs[i] = values[i];
+                }
+                return addrs;
+            }
+            catch (Exception ex)
+            {
+                //Log.LogError("RedisHelper->StringGetMany 鍑洪敊\r\n" + ex.ToString());
+                return null;
+            }
+        }
+
+        /// <summary>
+        /// 鑾峰彇涓�涓猭ey鐨勫璞�
+        /// </summary>
+        /// <typeparam name="T"></typeparam>
+        /// <param name="key"></param>
+        /// <returns></returns>
+        public T GetStringKey<T>(string key)
+        {
+            try
+            {
+                return JsonConvert.DeserializeObject<T>(CacheRedis.StringGet(key));
+            }
+            catch (Exception ex)
+            {
+                //return new T();
+                return default(T);
+            }
+        }
+
+        #endregion
+
+        #region --鍒犻櫎璁剧疆杩囨湡--
+
+        /// <summary>
+        /// 鍒犻櫎鍗曚釜key
+        /// </summary>
+        /// <param name="key">redis key</param>
+        /// <returns>鏄惁鍒犻櫎鎴愬姛</returns>
+        public bool KeyDelete(string key)
+        {
+            return CacheRedis.KeyDelete(key);
+        }
+
+        /// <summary>
+        /// 鍒犻櫎澶氫釜key
+        /// </summary>
+        /// <param name="keys">rediskey</param>
+        /// <returns>鎴愬姛鍒犻櫎鐨勪釜鏁�</returns>
+        public long KeyDelete(RedisKey[] keys)
+        {
+            return CacheRedis.KeyDelete(keys);
+        }
+
+        /// <summary>
+        /// 鍒ゆ柇key鏄惁瀛樺偍
+        /// </summary>
+        /// <param name="key">redis key</param>
+        /// <returns></returns>
+        public bool KeyExists(string key)
+        {
+            return CacheRedis.KeyExists(key);
+        }
+
+        /// <summary>
+        /// 閲嶆柊鍛藉悕key
+        /// </summary>
+        /// <param name="key">灏辩殑redis key</param>
+        /// <param name="newKey">鏂扮殑redis key</param>
+        /// <returns></returns>
+        public bool KeyRename(string key, string newKey)
+        {
+            return CacheRedis.KeyRename(key, newKey);
+        }
+
+        /// <summary>
+        /// 鍒犻櫎hasekey
+        /// </summary>
+        /// <param name="key"></param>
+        /// <param name="hashField"></param>
+        /// <returns></returns>
+        public bool HaseDelete(RedisKey key, RedisValue hashField)
+        {
+            return CacheRedis.HashDelete(key, hashField);
+        }
+
+        /// <summary>
+        /// 绉婚櫎hash涓殑鏌愬��
+        /// </summary>
+        /// <typeparam name="T"></typeparam>
+        /// <param name="key"></param>
+        /// <param name="dataKey"></param>
+        /// <returns></returns>
+        public bool HashRemove(string key, string dataKey)
+        {
+            return CacheRedis.HashDelete(key, dataKey);
+        }
+
+        /// <summary>
+        /// 璁剧疆缂撳瓨杩囨湡
+        /// </summary>
+        /// <param name="key"></param>
+        /// <param name="datetime"></param>
+        public void SetExpire(string key, int datetime)
+        {
+            CacheRedis.KeyExpire(key, DateTime.Now.AddSeconds(datetime));
+        }
+        #endregion
+    }
+}
diff --git a/VueWebCoreApi/VueWebCoreApi.csproj b/VueWebCoreApi/VueWebCoreApi.csproj
index 275fb7a..839ce66 100644
--- a/VueWebCoreApi/VueWebCoreApi.csproj
+++ b/VueWebCoreApi/VueWebCoreApi.csproj
@@ -42,6 +42,7 @@
 		<PackageReference Include="NPOI" Version="2.5.6" />
 		<PackageReference Include="Quartz" Version="3.3.3" />
 		<PackageReference Include="ServiceStack.Redis" Version="5.0.0" />
+		<PackageReference Include="StackExchange.Redis" Version="2.7.10" />
 		<PackageReference Include="Swashbuckle.AspNetCore" Version="5.0.0" />
 		<PackageReference Include="System.Data.OleDb" Version="4.6.0" />
 		<PackageReference Include="System.Data.SqlClient" Version="4.5.0" />

--
Gitblit v1.9.3