From f829c08e33a2dc58ab9db828c8f4f10c2cdd8ba5 Mon Sep 17 00:00:00 2001
From: 1790429840 <1790429840@qq.com>
Date: Wed, 25 Sep 2024 18:16:23 +0800
Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E5=A7=8B=E4=BB=A3=E7=A0=81=E6=8F=90?=
=?UTF-8?q?=E4=BA=A4=EF=BC=88=E5=8E=BB=E6=8E=89=E8=AF=BB=E5=8F=96=E7=BC=93?=
=?UTF-8?q?=E5=AD=98=E5=92=8C=E5=86=99=E6=97=A5=E5=BF=97=E5=8A=9F=E8=83=BD?=
=?UTF-8?q?=EF=BC=89?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Code/ClassLib/ZHYQ/BLL/SysOperationLogHelp.cs | 401 ------------------
.../DocManageAPP.csproj | 1 -
.../DOCManageAPP(阿克苏)/Web.config | 28 +-
.../WebCommon/RedisHelp.cs | 102 -----
.../ashx/AppHandler.ashx.cs | 11 +-
.../ashx/LoginHandler.ashx.cs | 146 -------
.../ashx/SysEmpHandler.ashx.cs | 3 +-
.../ashx/SysUpdPartyEmpPhotoHandler.ashx.cs | 368 ----------------
.../ashx/SysUserHandler.ashx.cs | 3 -
...gnTimeResolveAssemblyReferencesInput.cache | Bin 8403 -> 8732 bytes
...WebApiTools.csproj.AssemblyReference.cache | Bin 13661 -> 14931 bytes
...pOpenWebAPI.csproj.AssemblyReference.cache | Bin 0 -> 17693 bytes
...gnTimeResolveAssemblyReferencesInput.cache | Bin 13278 -> 12577 bytes
...gnTimeResolveAssemblyReferencesInput.cache | Bin 6918 -> 6882 bytes
...bCommonUtil.csproj.AssemblyReference.cache | Bin 0 -> 365 bytes
...gnTimeResolveAssemblyReferencesInput.cache | Bin 10821 -> 10336 bytes
...bFengHuoAPI.csproj.AssemblyReference.cache | Bin 0 -> 10205 bytes
...gnTimeResolveAssemblyReferencesInput.cache | Bin 10959 -> 10456 bytes
...bDiningXZZD.csproj.AssemblyReference.cache | Bin 0 -> 21082 bytes
19 files changed, 3 insertions(+), 1060 deletions(-)
delete mode 100644 Code/智慧营区/DOCManageAPP(阿克苏)/WebCommon/RedisHelp.cs
create mode 100644 Code/智慧营区/营区OpenAPI/CampOpenWebAPI/obj/Debug/CampOpenWebAPI.csproj.AssemblyReference.cache
create mode 100644 Code/智慧营区/营区OpenAPI/WebAPILib/LibCommonUtil/obj/Debug/LibCommonUtil.csproj.AssemblyReference.cache
create mode 100644 Code/智慧营区/营区OpenAPI/WebAPILib/烽火项目对接/LibFengHuoAPI/obj/Debug/LibFengHuoAPI.csproj.AssemblyReference.cache
create mode 100644 Code/智慧营区/营区OpenAPI/WebAPILib/西藏总队餐厅/LibDiningXZZD/obj/Debug/LibDiningXZZD.csproj.AssemblyReference.cache
diff --git a/Code/ClassLib/ZHYQ/BLL/SysOperationLogHelp.cs b/Code/ClassLib/ZHYQ/BLL/SysOperationLogHelp.cs
index 5af52b7..f67bf0a 100644
--- a/Code/ClassLib/ZHYQ/BLL/SysOperationLogHelp.cs
+++ b/Code/ClassLib/ZHYQ/BLL/SysOperationLogHelp.cs
@@ -17,24 +17,8 @@ namespace FangYar.BLL
///
public class SysOperationLogHelp
{
- ///
- /// 管理员账号数据库连接字符串
- ///
- private static string connStr = System.Configuration.ConfigurationManager.ConnectionStrings["MySqlConnStrLog"].ConnectionString;
- ///
- /// 设置是否记录操作日志到Kafka
- ///
- public static string IsKafkaLog = System.Configuration.ConfigurationManager.AppSettings["IsKafkaLog"] + "";
- ///
- /// 系统日志记录
- ///
- private static SysOperationLogBLL syslogBll = new SysOperationLogBLL();
- ///
- /// 设置是否记录操作日志:0、记录;其他、不记录
- ///
- public static string IsOperationLogDebug = System.Configuration.ConfigurationManager.AppSettings["IsOperationLogDebug"] + "";
///
@@ -48,391 +32,6 @@ namespace FangYar.BLL
public static void AddSysOperationLog(HttpContext context, EnumOperationLogType logType, string Info_Name, string Info_Msg, string ClientType = "0")
{
- // 将线程丢进线程池,参数是线程要做的事情
- ThreadPool.QueueUserWorkItem(t =>
- {
-
- //new Thread(() =>
- //{
- try
- {
-
- using (var ms = new System.IO.MemoryStream())
- {
- //判断如果信息内容为空则不记录
- if (string.IsNullOrWhiteSpace(Info_Msg))
- {
- return;
- }
- //判断是否需要记录日志
- if (!IsOperationLogDebug.Equals("0"))
- {
- return;
- }
-
- Tbl_Sys_Operation_Log_Model addMo = GetLogMoByHttpContext(context);
-
- //Tbl_Sys_Operation_Log_Model addMo = GetLogMoByHttpContext(HttpContext.Current);
- addMo.Info_Type = ((int)logType) + "";
- addMo.Info_Msg = Info_Msg;
- addMo.Info_Name = Info_Name;
- if (string.IsNullOrWhiteSpace(addMo.Url_Str))
- {
- string a = "";
- }
- addMo.Headers_Str1 = ClientType;
- syslogBll.Add(addMo, connStr);
- //添加到ClickHouse数据库
- //ClickHouseHelper.AddSysOperationLog(addMo);
-
- if (!IsKafkaLog.Equals("0"))
- {
- return;
- }
- //添加到Kafka后添加到Click数据库
- KafkaHelper.SendKafKaMsg(addMo);
- }
- }
- catch (Exception ex)
- {
- string str = "系统日志记录异常:" + ex;
- FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo()
- {
- message = str,
- msgType = FangYar.Common.EnumLogMsgTypeEnum.Error,
- path = "SysOperationLog"
- });
- }
- //}).Start();
- });
}
-
- private static Tbl_Sys_Operation_Log_Model GetLogMoByHttpContext(HttpContext context)
- {
- Tbl_Sys_Operation_Log_Model retMo = new Tbl_Sys_Operation_Log_Model();
- try
- {
- var Request = context.Request;
-
- var cookUserMo = GetCookUserByHttpContext(context);
-
- retMo = new Tbl_Sys_Operation_Log_Model();
-
- retMo.ID = "";
- retMo.Info_Msg = "";
- retMo.Info_Name = "";
- retMo.createtime = "";
- retMo.Info_Type = null;
- try
- {
- retMo.Url_Form = GetFormStr(context);
- }
- catch (Exception ex)
- {
- string str = "系统日志记录HttpContext获取Form参数信息异常:" + ex;
- FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo() { message = str, msgType = FangYar.Common.EnumLogMsgTypeEnum.Error, path = "SysOperationLog" });
- }
- try
- {
- retMo.User_Uid = cookUserMo.usersUid;
- }
- catch (Exception ex)
- {
- string str = "系统日志记录HttpContext获取登录用户账号异常:" + ex;
- FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo() { message = str, msgType = FangYar.Common.EnumLogMsgTypeEnum.Error, path = "SysOperationLog" });
- }
- try
- {
- retMo.Browser = Request.Browser.Browser;
- retMo.Browser_Type = Request.Browser.Type;
- retMo.System_Type = Request.Browser.Platform;
- retMo.Browser_VerSion = Request.Browser.Version;
- }
- catch (Exception ex)
- {
- string str = "系统日志记录HttpContext获取客户端浏览器异常:" + ex;
- FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo() { message = str, msgType = FangYar.Common.EnumLogMsgTypeEnum.Error, path = "SysOperationLog" });
- }
- //获取用户IC
- retMo.Client_IP = GetClientIp(context);
- //获取用户端UUID
- retMo.UUID_Str = GetUUID(context);
- try
- {
- retMo.Client_Name = Request.UserHostName;
- }
- catch (Exception ex)
- {
- string str = "系统日志记录HttpContext获取用户IP信息异常:" + ex;
- FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo() { message = str, msgType = FangYar.Common.EnumLogMsgTypeEnum.Error, path = "SysOperationLog" });
- }
- try
- {
- retMo.Url_Str = Request.Url.AbsoluteUri;
- }
- catch (Exception ex)
- {
- string str = "系统日志记录HttpContext获取请求路径信息异常:" + ex;
- FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo()
- {
- message = str,
- msgType = FangYar.Common.EnumLogMsgTypeEnum.Error,
- path = "SysOperationLog"
- });
- }
- try
- {
- string Headers_Str = Request.ServerVariables["All_Http"];
- if (Headers_Str.IndexOf(".SessionCookie=") > 0)
- {
- string Headers_StrHead = Headers_Str.Substring(0, Headers_Str.IndexOf(".SessionCookie="));
- string Headers_StrEnd = Headers_Str.Substring(Headers_Str.IndexOf("HTTP_HOST:"));
- Headers_Str = Headers_StrHead + Headers_StrEnd;
- retMo.Headers_Str = Headers_Str;
- }
- else
- {
- retMo.Headers_Str = Headers_Str;
- }
-
- }
- catch (Exception ex)
- {
- string str = "系统日志记录HttpContext获取Header信息异常:" + ex;
- FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo()
- {
- message = str,
- msgType = FangYar.Common.EnumLogMsgTypeEnum.Error,
- path = "SysOperationLog"
- });
- }
-
- //string Headers_Str1 = Request.ServerVariables["All_Raw"];
- //string Headers_Str1Head = Headers_Str1.Substring(0, Headers_Str1.IndexOf(".SessionCookie"));
- //string Headers_Str1End = Headers_Str1.Substring(Headers_Str1.IndexOf("Host:"));
- //Headers_Str1 = Headers_Str1Head + Headers_Str1End;
- //retMo.Headers_Str1 = Headers_Str1;
-
- retMo.Action_Str = context.Request.Params["Action"] + "";
- retMo.Url_Parameter = Request.Url.Query;
- retMo.Browser_System_Str = Request.ServerVariables["HTTP_USER_AGENT"];
- retMo.Org_ID = cookUserMo.orgId;
- retMo.Org_Name = cookUserMo.orgName;
- retMo.roles = cookUserMo.roles;
- retMo.UserMobile = cookUserMo.userMobile;
- retMo.User_Name = cookUserMo.usersName;
- retMo.Post_Parameter = GetPostParam(Request);
- }
- catch (Exception ex)
- {
- string str = "系统日志记录HttpContext转换异常:" + ex;
- FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo()
- {
- message = str,
- msgType = FangYar.Common.EnumLogMsgTypeEnum.Error,
- path = "SysOperationLog"
- });
- }
- return retMo;
- }
-
- private static string GetPostParam(HttpRequest Request)
- {
- string postParam = ""; //post的所有参数
- try
- {
- using (System.IO.StreamReader sr = new System.IO.StreamReader(Request.InputStream))
- {
- postParam = sr.ReadLine();
-
- }
- }
- catch (Exception ex)
- {
- string str = "系统日志记录获取Post参数异常:" + ex;
- FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo()
- {
- message = str,
- msgType = FangYar.Common.EnumLogMsgTypeEnum.Error,
- path = "SysOperationLog"
- });
- }
- return postParam;
- }
-
- ///
- /// 返回客户端IP
- ///
- ///
- ///
- private static string GetClientIp(HttpContext context)
- {
- string retStr = "";
- try
- {
-
- string ipStr = context.Request.ServerVariables["All_Http"];
-
- if (ipStr.IndexOf("HTTP_X_ORIGINAL_FORWARDED_FOR:") < 0)
- {
- if (ipStr.IndexOf("HTTP_X_FORWARDED_FOR:") < 0)
- {
- if (ipStr.IndexOf("HTTP_X_CLIENT_IP:") < 0)
- {
- return "未获取";
- }
- else
- {
- ipStr = ipStr.Substring(ipStr.IndexOf("HTTP_X_CLIENT_IP:") + 17);
- retStr = ipStr.Substring(0, ipStr.IndexOf("HTTP_"));
- }
- }
- else
- {
- ipStr = ipStr.Substring(ipStr.IndexOf("HTTP_X_FORWARDED_FOR:") + 21);
- retStr = ipStr.Substring(0, ipStr.IndexOf("HTTP_"));
- }
- }
- else
- {
- ipStr = ipStr.Substring(ipStr.IndexOf("HTTP_X_ORIGINAL_FORWARDED_FOR:") + 30);
- retStr = ipStr.Substring(0, ipStr.IndexOf("HTTP_"));
- }
-
- }
- catch (Exception ex)
- {
- string str = "系统日志记录HttpContext获取用户IP信息异常:" + ex;
- FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo() { message = str, msgType = FangYar.Common.EnumLogMsgTypeEnum.Error, path = "SysOperationLog" });
- }
- return retStr;
- }
-
- ///
- /// 返回客户端UUID
- ///
- ///
- ///
- private static string GetUUID(HttpContext context)
- {
- string retStr = "";
- try
- {
-
- string ipStr = context.Request.ServerVariables["All_Http"];
-
- if (ipStr.IndexOf("HTTP_X5_UUID:") < 0)
- {
- return "未获取";
- }
- retStr = ipStr.Substring(ipStr.IndexOf("HTTP_X5_UUID:") + 13);
-
- }
- catch (Exception ex)
- {
- string str = "系统日志记录HttpContext获取客户端UUID异常:" + ex;
- FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo() { message = str, msgType = FangYar.Common.EnumLogMsgTypeEnum.Error, path = "SysOperationLog" });
- }
- return retStr;
- }
-
- ///
- /// 获取Cook缓存信息
- ///
- ///
- ///
- private static CookUserMo GetCookUserByHttpContext(HttpContext context)
- {
- CookUserMo retMo = new CookUserMo();
- try
- {
- //if (context.Request.Cookies["kn_root_cookie"] == null)
- //{
- // return new CookUserMo() { cityId = "", deptId = "", deptName = "", orgId = "", orgName = "", roles = "", userMobile = "", usersName = "", usersUid = "" };
- //}
- //string CookStr = context.Request.Cookies["kn_root_cookie"].Value + "";
-
- string CookStr = context.Request.ServerVariables["All_Http"];
- if (CookStr.IndexOf("kn_root_cookie=") < 0)
- {
- return new CookUserMo() { cityId = "", deptId = "", deptName = "", orgId = "", orgName = "", roles = "", userMobile = "", usersName = "", usersUid = "" };
- }
- CookStr = CookStr.Substring(CookStr.IndexOf("kn_root_cookie=") + 15);
-
- CookStr = CookStr.Substring(0, CookStr.IndexOf("}") + 1);
-
- //CookStr = CookStr.Replace("kn_root_cookie=", "");
-
- retMo = JsonHelper.FromJSON(CookStr);
- }
- catch (Exception ex)
- {
- retMo = new CookUserMo() { cityId = "", deptId = "", deptName = "", orgId = "", orgName = "", roles = "", userMobile = "", usersName = "", usersUid = "" };
- string str = "系统日志记录获取Cook信息异常:" + ex;
- FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo()
- {
- message = str,
- msgType = FangYar.Common.EnumLogMsgTypeEnum.Error,
- path = "SysOperationLog"
- });
- }
- return retMo;
- }
-
- private static string GetFormStr(HttpContext context)
- {
- string retStr = "";
- try
- {
- foreach (var item in context.Request.Params)
- {
- try
- {
-
- if (item.Equals(".SessionCookie"))
- {
- continue;
- }
- if (item.Equals("ALL_HTTP"))
- {
- continue;
- }
- if (item.Equals("ALL_RAW"))
- {
- continue;
- }
- if (item.Equals("HTTP_COOKIE"))
- {
- continue;
- }
- if (item.Equals("ASP.NET_SessionId"))
- {
- continue;
- }
- string a = "";
- if (!string.IsNullOrWhiteSpace(retStr))
- {
- retStr += "&";
- }
-
- // retStr += item + "=" + GetParams(context.Request.Params[item + ""] + "");
- retStr += item + "=" + context.Request.Params[item + ""];
- }
- catch (Exception ex) { }
- }
- }
- catch (Exception ex)
- {
- string str = "系统日志记录后去Form参数异常:" + ex;
- FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo()
- {
- message = str,
- msgType = FangYar.Common.EnumLogMsgTypeEnum.Error,
- path = "SysOperationLog"
- });
- }
- return retStr;
- }
-
}
}
diff --git a/Code/智慧营区/DOCManageAPP(阿克苏)/DocManageAPP.csproj b/Code/智慧营区/DOCManageAPP(阿克苏)/DocManageAPP.csproj
index 78f7c38..4ab69a3 100644
--- a/Code/智慧营区/DOCManageAPP(阿克苏)/DocManageAPP.csproj
+++ b/Code/智慧营区/DOCManageAPP(阿克苏)/DocManageAPP.csproj
@@ -6356,7 +6356,6 @@
-
diff --git a/Code/智慧营区/DOCManageAPP(阿克苏)/Web.config b/Code/智慧营区/DOCManageAPP(阿克苏)/Web.config
index f83409d..b39eb8e 100644
--- a/Code/智慧营区/DOCManageAPP(阿克苏)/Web.config
+++ b/Code/智慧营区/DOCManageAPP(阿克苏)/Web.config
@@ -8,27 +8,7 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
@@ -115,12 +95,6 @@
-
-
-
-
-
-
diff --git a/Code/智慧营区/DOCManageAPP(阿克苏)/WebCommon/RedisHelp.cs b/Code/智慧营区/DOCManageAPP(阿克苏)/WebCommon/RedisHelp.cs
deleted file mode 100644
index 3e24442..0000000
--- a/Code/智慧营区/DOCManageAPP(阿克苏)/WebCommon/RedisHelp.cs
+++ /dev/null
@@ -1,102 +0,0 @@
-using ServiceStack.Redis;
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Web;
-
-namespace FangYar.WebUI.WebCommon
-{
- public class RedisHelp
- {
- //邮件发送账号
- string redisIp = System.Configuration.ConfigurationManager.AppSettings["redisIp"] + "";
- //邮件发送授权码
- string redisPort = System.Configuration.ConfigurationManager.AppSettings["redisPort"] + "";
- //邮件发送SMTP
- string redisPwd = System.Configuration.ConfigurationManager.AppSettings["redisPwd"] + "";
-
- public void SetRedis(string key, string Val)
- {
- try
- {
- int.TryParse(redisPort, out int redisPortNum);
- redisPwd = string.IsNullOrWhiteSpace(redisPwd) ? null : redisPwd;
- using (RedisClient client = new RedisClient(redisIp, redisPortNum, redisPwd))
- {
- if (client == null)
- {
- return;
- }
- if (client.ContainsKey(key))
- {
- client.Replace(key, Val);
- }
- else
- {
- client.Set(key, Val);
- }
- }
- }
- catch (Exception ex)
- {
- string str = "写入Redis异常:" + ex;
- FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo()
- {
- message = str,
- msgType = FangYar.Common.EnumLogMsgTypeEnum.Error,
- path = "RedisLog"
- });
- }
- }
-
- public string GetRedis(string key)
- {
- try
- {
- int.TryParse(redisPort, out int redisPortNum);
- redisPwd = string.IsNullOrWhiteSpace(redisPwd) ? null : redisPwd;
- using (RedisClient client = new RedisClient(redisIp, redisPortNum, redisPwd))
- {
- return client.Get(key);
- }
- }
- catch (Exception ex)
- {
- string str = "读取Redis异常:" + ex;
- FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo()
- {
- message = str,
- msgType = FangYar.Common.EnumLogMsgTypeEnum.Error,
- path = "RedisLog"
- });
- }
- return "";
- }
-
-
- public string RemoveLoginAllReids(string usersId)
- {
- try
- {
- SetRedis("XJAPPlogin_" + usersId, "");
- SetRedis("XCXlogin_" + usersId, "");
- SetRedis("AppLoginByAppId_" + usersId, "");
- SetRedis("XCXLoginByOpenId_" + usersId, "");
- SetRedis("pwdCache_" + usersId, "");
-
- }
- catch (Exception ex)
- {
- string str = "读取Redis异常:" + ex;
- FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo()
- {
- message = str,
- msgType = FangYar.Common.EnumLogMsgTypeEnum.Error,
- path = "RedisLog"
- });
- }
- return "";
- }
-
- }
-}
\ No newline at end of file
diff --git a/Code/智慧营区/DOCManageAPP(阿克苏)/ashx/AppHandler.ashx.cs b/Code/智慧营区/DOCManageAPP(阿克苏)/ashx/AppHandler.ashx.cs
index 1bfceda..4ca409d 100644
--- a/Code/智慧营区/DOCManageAPP(阿克苏)/ashx/AppHandler.ashx.cs
+++ b/Code/智慧营区/DOCManageAPP(阿克苏)/ashx/AppHandler.ashx.cs
@@ -8068,13 +8068,6 @@ namespace FangYar.WebUI.ashx
string userUid = context.Request.Params["userUid"];
string orgId = context.Request.Params["orgId"];
- //读取缓存信息
- string retStr = new WebCommon.RedisHelp().GetRedis("AppGetCornerMarkSta_" + userUid);
-
- if (!string.IsNullOrEmpty(retStr))
- {
- return retStr;
- }
string sqlStr = " with t1 as ( SELECT count(1) as dbCount FROM WorkFlowTask t WHERE ReceiveID = '" + userUid + "' AND STATUS IN(0, 1)),";
@@ -8093,7 +8086,6 @@ namespace FangYar.WebUI.ashx
returnstr += FangYar.Common.JsonHelper.ToJson(dt);
returnstr += "}";
- new WebCommon.RedisHelp().SetRedis("AppGetCornerMarkSta_" + userUid, returnstr);
}
catch (Exception e)
{
@@ -8137,8 +8129,7 @@ SELECT u,SUM(dbCount) dbCount,SUM(fkCount) fkCount,SUM(jhxcCount) jhxcCount,SUM(
string returnstr = "{\"code\":0,\"msg\":\"\",\"count\":1,\"data\":[{" +
"\"DBCOUNT\":" + dt.Rows[i]["dbCount"] + ",\"FKCOUNT\":" + dt.Rows[i]["fkCount"] + ",\"JHXCCOUNT\":" + dt.Rows[i]["jhxcCount"] +
",\"YHZGCOUNT\":" + dt.Rows[i]["yhzgCount"] + ",\"CPCSCOUNT\":" + dt.Rows[i]["cpcsCount"] + ",\"XJCOUNT\":" + dt.Rows[i]["xjCount"] + "}]}";
-
- new WebCommon.RedisHelp().SetRedis("AppGetCornerMarkSta_" + userUid, returnstr);
+
}
catch (Exception ex)
{
diff --git a/Code/智慧营区/DOCManageAPP(阿克苏)/ashx/LoginHandler.ashx.cs b/Code/智慧营区/DOCManageAPP(阿克苏)/ashx/LoginHandler.ashx.cs
index 28d1212..a608d3b 100644
--- a/Code/智慧营区/DOCManageAPP(阿克苏)/ashx/LoginHandler.ashx.cs
+++ b/Code/智慧营区/DOCManageAPP(阿克苏)/ashx/LoginHandler.ashx.cs
@@ -307,41 +307,10 @@ namespace FangYar.WebUI.ashx
string usersPwd = UserPwd;
string revlue = "";
- //读取缓存信息
- string retStr = new WebCommon.RedisHelp().GetRedis("XJAPPlogin_" + UserID);
//密码原始字符串
string pwdStr = context.Request.Params["strPwd"];
- if (!string.IsNullOrWhiteSpace(retStr))
- {
- //密码缓存字符串
- string pwdCacheStr = new WebCommon.RedisHelp().GetRedis("pwdCache_" + UserID);
-
- if (string.IsNullOrWhiteSpace(pwdStr))
- {
- new WebCommon.RedisHelp().RemoveLoginAllReids(UserID);
- return "{\"code\":0,\"msg\":\"用户名或密码错误\"}";
- }
-
- if (string.IsNullOrWhiteSpace(pwdCacheStr))
- {
- new WebCommon.RedisHelp().SetRedis("pwdCache_" + UserID, pwdStr);
- return retStr;
- }
- if (pwdStr.Equals(pwdCacheStr))
- {
- return retStr;
- }
- else
- {
- return "{\"code\":0,\"msg\":\"用户名或密码错误\"}";
- }
- }
- //if (!string.IsNullOrEmpty(retStr))
- //{
- // return retStr;
- //}
Model.LoginUserModel buser = new Model.LoginUserModel();
BLL.TBL.SysUsersBLL bll = new BLL.TBL.SysUsersBLL();
@@ -403,8 +372,6 @@ namespace FangYar.WebUI.ashx
revlue += ",\"MENUARRAY\":" + userMenuList;
bool isupcid = new BLL.TBL.SysEmpBLL().updateCid(UserID, AppId);
revlue += ",\"isUpdateCid\":\"" + isupcid + "\"}";
- new WebCommon.RedisHelp().SetRedis("XJAPPlogin_" + UserID, revlue);
- new WebCommon.RedisHelp().SetRedis("pwdCache_" + UserID, pwdStr);
}
else
{
@@ -635,41 +602,8 @@ namespace FangYar.WebUI.ashx
string usersPwd = UserPwd;
string revlue = "";
- //读取缓存信息
- string retStr = new WebCommon.RedisHelp().GetRedis("XCXlogin_" + UserID);
-
//密码原始字符串
string pwdStr = context.Request.Params["strPwd"];
- if (!string.IsNullOrWhiteSpace(retStr))
- {
- //密码缓存字符串
- string pwdCacheStr = new WebCommon.RedisHelp().GetRedis("pwdCache_" + UserID);
-
- if (string.IsNullOrWhiteSpace(pwdStr))
- {
- new WebCommon.RedisHelp().RemoveLoginAllReids(UserID);
- return "{\"code\":0,\"msg\":\"用户名或密码错误\"}";
- }
- if (string.IsNullOrWhiteSpace(pwdCacheStr))
- {
- new WebCommon.RedisHelp().SetRedis("pwdCache_" + UserID, pwdStr);
- return retStr;
- }
-
- if (pwdStr.Equals(pwdCacheStr))
- {
- return retStr;
- }
- else
- {
- return "{\"code\":0,\"msg\":\"用户名或密码错误\"}";
- }
- }
-
- //if (!string.IsNullOrEmpty(retStr))
- //{
- // return retStr;
- //}
Model.LoginUserModel buser = new Model.LoginUserModel();
BLL.TBL.SysUsersBLL bll = new BLL.TBL.SysUsersBLL();
@@ -696,8 +630,6 @@ namespace FangYar.WebUI.ashx
string userMenuList = GetUserMenu(buser, "1");
revlue += ",\"MENUARRAY\":" + userMenuList + "}";
- new WebCommon.RedisHelp().SetRedis("XCXlogin_" + UserID, revlue);
- new WebCommon.RedisHelp().SetRedis("pwdCache_" + UserID, pwdStr);
}
else
{
@@ -734,41 +666,6 @@ namespace FangYar.WebUI.ashx
string usersPwd = UserPwd;
string revlue = "";
- //读取缓存信息
- string retStr = new WebCommon.RedisHelp().GetRedis("AppLoginByAppId_" + UserID);
-
- //密码原始字符串
- string pwdStr = context.Request.Params["strPwd"];
- if (!string.IsNullOrWhiteSpace(retStr))
- {
- //密码缓存字符串
- string pwdCacheStr = new WebCommon.RedisHelp().GetRedis("pwdCache_" + UserID);
-
- if (string.IsNullOrWhiteSpace(pwdStr))
- {
- new WebCommon.RedisHelp().RemoveLoginAllReids(UserID);
- return "{\"code\":0,\"msg\":\"用户名或密码错误\"}";
- }
- if (string.IsNullOrWhiteSpace(pwdCacheStr))
- {
- new WebCommon.RedisHelp().SetRedis("pwdCache_" + UserID, pwdStr);
- return retStr;
- }
-
- if (pwdStr.Equals(pwdCacheStr))
- {
- return retStr;
- }
- else
- {
- return "{\"code\":0,\"msg\":\"用户名或密码错误\"}";
- }
- }
-
- //if (!string.IsNullOrEmpty(retStr))
- //{
- // return retStr;
- //}
Model.LoginUserModel buser = new Model.LoginUserModel();
@@ -823,8 +720,6 @@ namespace FangYar.WebUI.ashx
string userMenuList = GetUserMenu(buser, "0");
revlue += ",\"MENUARRAY\":" + userMenuList + "\"}";
- new WebCommon.RedisHelp().SetRedis("AppLoginByAppId_" + UserID, revlue);
- new WebCommon.RedisHelp().SetRedis("pwdCache_" + UserID, pwdStr);
}
else
{
@@ -866,43 +761,6 @@ namespace FangYar.WebUI.ashx
}
catch (Exception ex) { }
- //读取缓存信息
- string retStr = new WebCommon.RedisHelp().GetRedis("XCXLoginByOpenId_" + UserID);
-
- //密码原始字符串
- string pwdStr = context.Request.Params["strPwd"];
-
- if (!string.IsNullOrWhiteSpace(retStr))
- {
- //密码缓存字符串
- string pwdCacheStr = new WebCommon.RedisHelp().GetRedis("pwdCache_" + UserID);
-
- if (string.IsNullOrWhiteSpace(pwdStr))
- {
- new WebCommon.RedisHelp().RemoveLoginAllReids(UserID);
- return "{\"code\":0,\"msg\":\"用户名或密码错误\"}";
- }
- if (string.IsNullOrWhiteSpace(pwdCacheStr))
- {
- new WebCommon.RedisHelp().SetRedis("pwdCache_" + UserID, pwdStr);
- return retStr;
- }
-
- if (pwdStr.Equals(pwdCacheStr))
- {
- return retStr;
- }
- else
- {
- return "{\"code\":0,\"msg\":\"用户名或密码错误\"}";
- }
- }
-
- //if (!string.IsNullOrEmpty(retStr))
- //{
- // return retStr;
- //}
-
Model.LoginUserModel buser = new Model.LoginUserModel();
BLL.TBL.SysUsersBLL bll = new BLL.TBL.SysUsersBLL();
try
@@ -937,8 +795,6 @@ namespace FangYar.WebUI.ashx
string userMenuList = GetUserMenu(buser, "1");
revlue += ",\"MENUARRAY\":" + userMenuList + "}";
- new WebCommon.RedisHelp().SetRedis("XCXLoginByOpenId_" + UserID, revlue);
- new WebCommon.RedisHelp().SetRedis("pwdCache_" + UserID, pwdStr);
}
else
{
@@ -1222,7 +1078,6 @@ namespace FangYar.WebUI.ashx
string UserID = context.Request.Params["strUser"];
string AppId = context.Request.Params["AppId"].Trim();
bool isupcid = new BLL.TBL.SysEmpBLL().updateCid(UserID, AppId);
- new WebCommon.RedisHelp().RemoveLoginAllReids(UserID);
return "\"isUpdateCid\":\"" + isupcid + "\"";
}
@@ -1244,7 +1099,6 @@ namespace FangYar.WebUI.ashx
string UserID = context.Request.Params["strUser"];
string OpenId = context.Request.Params["OpenId"].Trim();
bool isupcid = new BLL.TBL.SysEmpBLL().updateOpenId(UserID, OpenId);
- new WebCommon.RedisHelp().RemoveLoginAllReids(UserID);
return "\"isUpdateCid\":\"" + isupcid + "\"";
}
catch (Exception e)
diff --git a/Code/智慧营区/DOCManageAPP(阿克苏)/ashx/SysEmpHandler.ashx.cs b/Code/智慧营区/DOCManageAPP(阿克苏)/ashx/SysEmpHandler.ashx.cs
index f89ae2e..dafc30a 100644
--- a/Code/智慧营区/DOCManageAPP(阿克苏)/ashx/SysEmpHandler.ashx.cs
+++ b/Code/智慧营区/DOCManageAPP(阿克苏)/ashx/SysEmpHandler.ashx.cs
@@ -871,8 +871,7 @@ namespace FangYar.WebUI.ashx
FangYar.BLL.TBL.SysUsersBLL ubll = new BLL.TBL.SysUsersBLL();
ubll.UpdateOrgId(model.USERS_UID, model.ORG_ID);
msg = "修改成功!";
- code = 1;
- new WebCommon.RedisHelp().RemoveLoginAllReids(model.USERS_UID);
+ code = 1;
}
else { msg = "修改失败!"; }
}
diff --git a/Code/智慧营区/DOCManageAPP(阿克苏)/ashx/SysUpdPartyEmpPhotoHandler.ashx.cs b/Code/智慧营区/DOCManageAPP(阿克苏)/ashx/SysUpdPartyEmpPhotoHandler.ashx.cs
index 24955d8..67f1040 100644
--- a/Code/智慧营区/DOCManageAPP(阿克苏)/ashx/SysUpdPartyEmpPhotoHandler.ashx.cs
+++ b/Code/智慧营区/DOCManageAPP(阿克苏)/ashx/SysUpdPartyEmpPhotoHandler.ashx.cs
@@ -12,10 +12,6 @@ namespace FangYar.WebUI.ashx
///
public class SysUpdPartyEmpPhotoHandler : IHttpHandler
{
- ///
- /// 管理员账号数据库连接字符串
- ///
- private static string connStr = System.Configuration.ConfigurationManager.ConnectionStrings["MySqlConnStrAdmin"].ConnectionString;
public void ProcessRequest(HttpContext context)
{
@@ -23,372 +19,8 @@ namespace FangYar.WebUI.ashx
string action = context.Request.Params["Action"];
string returnstr = "";
- switch (action)
- {
- //更新党建库人员照片信息
- case "UpdPartyEmpPhoto":
- returnstr = UpdPartyEmpPhoto(context);
- break;
-
- //查询党建考试统计
- case "GetPartyExam":
- returnstr = GetPartyExam(context);
- break;
- //查询党建考试成绩查询
- case "GetPartyExamResult":
- returnstr = GetPartyExamResult(context);
- break;
- }
-
context.Response.Write(returnstr);
}
- ///
- /// 查询党建考试
- ///
- ///
- ///
- private string GetPartyExam(HttpContext context)
- {
- string returnstr = "{\"code\":0,\"msg\":\"error\",\"count\":0,\"data\":[]}";
- try
- {
- // 分页
- string page = context.Request.Params["page"];
- // 分页大小
- string limit = context.Request.Params["limit"];
- // 组织机构ID
- string orgId = context.Request.Params["orgId"];
- // 考试ID
- string paperinfoId = context.Request.Params["paperinfoId"];
- // 成绩是否为空
- string isExam = context.Request.Params["isExam"];
-
- //人员名称查询
- string name = context.Request.Params["name"];
-
- string whereStr = " ";
- if (!string.IsNullOrWhiteSpace(name))
- {
- whereStr += " and EMP_NAME like '%" + name + "%' ";
- }
-
- int pageIndex = 1;
- int pageSize = 10;
-
- if (!string.IsNullOrEmpty(page)) { pageIndex = int.Parse(page); }
- if (!string.IsNullOrEmpty(limit)) { pageSize = int.Parse(limit); }
-
- pageIndex = pageIndex - 1;
- pageIndex = pageIndex < 0 ? 0 : pageIndex;
- pageSize = pageSize < 1 ? 1 : pageSize;
-
- int startNum = pageIndex * pageSize;
-
- // 查询信息总数
- string sqlCount = " WITH t1 AS ( SELECT EMP_NAME, ORG_ID, USERS_UID, EMP_MOBILE FROM tbl_sys_emp,( SELECT get_Org_child_list ( '" + orgId + @"' ) cids ) s
- WHERE find_in_set( org_id, cids ) and IS_ADMIN='0' and IS_DEL='0' " + whereStr + @" )
- SELECT count(1) n FROM t1 LEFT JOIN fire_org o ON t1.ORG_ID = o.ORG_ID
- LEFT JOIN ( select MAX(r.USERS_SCORE + 0) as USERS_SCORE, MAX(r.PAPERINFO_ID) as PAPERINFO_ID, MAX(r.QUESTION_ANSWER) as QUESTION_ANSWER,
- r.USERS_UID as USERS_UID, MAX(r.id) as id from campparty.tbl_material_result r where r.PAPERINFO_ID = '" + paperinfoId +
- "' GROUP BY r.USERS_UID ) t on t1.USERS_UID = t.USERS_UID ";
- //if (!string.IsNullOrWhiteSpace(paperinfoId))
- //{
- // sqlCount += " and t.PAPERINFO_ID = '" + paperinfoId + "' ";
- //}
- if (!string.IsNullOrWhiteSpace(isExam))
- {
- switch (isExam)
- {
- case "0":
- sqlCount += " WHERE LENGTH( IFNULL(t.id,''))<1 ";
- break;
- case "1":
- sqlCount += " WHERE LENGTH( IFNULL(t.id,''))>0 ";
- break;
- }
- }
-
- sqlCount += " ORDER BY t.USERS_SCORE desc,t1.ORG_ID, t1.USERS_UID ";
-
-
- var dtNum = QueryTable(sqlCount);
-
- string sql = " WITH t1 AS ( SELECT ID,EMP_NAME, ORG_ID, USERS_UID, EMP_MOBILE FROM tbl_sys_emp,( SELECT get_Org_child_list ( '" + orgId + @"' ) cids ) s
- WHERE find_in_set( org_id, cids ) and IS_ADMIN='0' and IS_DEL='0' " + whereStr + @" )
- SELECT t1.*, o.ORG_NAME, t.PAPERINFO_ID, t.QUESTION_ANSWER, t.USERS_SCORE, case when t.id is null then 0 else 1 end as is_exam
- FROM t1 LEFT JOIN fire_org o ON t1.ORG_ID = o.ORG_ID
- LEFT JOIN ( select MAX(r.USERS_SCORE + 0) as USERS_SCORE, MAX(r.PAPERINFO_ID) as PAPERINFO_ID, MAX(r.QUESTION_ANSWER) as QUESTION_ANSWER,
- r.USERS_UID as USERS_UID, MAX(r.id) as id from campparty.tbl_material_result r where r.PAPERINFO_ID = '" + paperinfoId +
- "' GROUP BY r.USERS_UID ) t on t1.USERS_UID = t.USERS_UID ";
- //if (!string.IsNullOrWhiteSpace(paperinfoId))
- //{
- // sql += " and t.PAPERINFO_ID = '" + paperinfoId + "' ";
- //}
- if (!string.IsNullOrWhiteSpace(isExam))
- {
- switch (isExam)
- {
- case "0":
- sql += " WHERE LENGTH( IFNULL(t.id,''))<1 ";
- break;
- case "1":
- sql += " WHERE LENGTH( IFNULL(t.id,''))>0 ";
- break;
- }
- }
-
- sql += " ORDER BY t.USERS_SCORE desc,t1.ORG_ID, t1.id limit " + startNum + " ," + pageSize + " ";
-
- var dt = QueryTable(sql);
-
- returnstr = "{\"code\":0,\"msg\":\"success\",\"count\":" + dtNum.Rows[0][0] + ",\"data\":" + FangYar.Common.JsonHelper.ToJson(dt) + "}";
-
- }
- catch (Exception ex)
- {
- returnstr = "{\"code\":1,\"msg\":\"error\",\"count\":0,\"data\":[]}";
-
- string str = "查询党建考试异常:" + ex;
- FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo()
- {
- message = str,
- msgType = FangYar.Common.EnumLogMsgTypeEnum.Error,
- path = "UpdPartyEmpPhoto"
- });
- }
- return returnstr;
- }
-
-
-
- ///
- /// 查询党建考试成绩
- ///
- ///
- ///
- private string GetPartyExamResult(HttpContext context)
- {
- string returnstr = "{\"code\":0,\"msg\":\"error\",\"count\":0,\"data\":[]}";
- try
- {
- // 分页
- string page = context.Request.Params["page"];
- // 分页大小
- string limit = context.Request.Params["limit"];
- // 组织机构ID
- string orgId = context.Request.Params["orgId"];
- // 考试ID
- string paperinfoId = context.Request.Params["paperinfoId"];
- // 成绩是否为空
- string isExam = context.Request.Params["isExam"];
-
- //人员名称查询
- string name = context.Request.Params["name"];
-
- string whereStr = " ";
- if (!string.IsNullOrWhiteSpace(name))
- {
- whereStr += " and EMP_NAME like '%" + name + "%' ";
- }
-
- int pageIndex = 1;
- int pageSize = 10;
-
- if (!string.IsNullOrEmpty(page)) { pageIndex = int.Parse(page); }
- if (!string.IsNullOrEmpty(limit)) { pageSize = int.Parse(limit); }
-
- pageIndex = pageIndex - 1;
- pageIndex = pageIndex < 0 ? 0 : pageIndex;
- pageSize = pageSize < 1 ? 1 : pageSize;
-
- int startNum = pageIndex * pageSize;
-
- // 查询信息总数
- string sqlCount = " WITH t1 AS ( SELECT EMP_NAME, ORG_ID, USERS_UID, EMP_MOBILE FROM tbl_sys_emp,( SELECT get_Org_child_list ( '" + orgId + @"' ) cids ) s
- WHERE find_in_set( org_id, cids ) and IS_ADMIN='0' and IS_DEL='0' " + whereStr + @" )
- SELECT count(1) n FROM t1 LEFT JOIN fire_org o ON t1.ORG_ID = o.ORG_ID
- LEFT JOIN (select MAX(i.score+0) as score,MAX(i.id) as id,i.JOB_NUMBER from campparty.tbl_score_info i where i.paper_id = '" + paperinfoId
- + "' group by i.job_number ) t on t1.USERS_UID = t.job_number ";
- //if (!string.IsNullOrWhiteSpace(paperinfoId))
- //{
- // sqlCount += " AND t.paper_id = '" + paperinfoId + "' ";
- //}
- if (!string.IsNullOrWhiteSpace(isExam))
- {
- switch (isExam)
- {
- case "0":
- sqlCount += " WHERE LENGTH( IFNULL(t.id,''))<1 ";
- break;
- case "1":
- sqlCount += " WHERE LENGTH( IFNULL(t.id,''))>0 ";
- break;
- }
- }
-
-
- var dtNum = QueryTable(sqlCount);
-
- string sql = " WITH t1 AS ( SELECT ID,EMP_NAME, ORG_ID, USERS_UID, EMP_MOBILE FROM tbl_sys_emp,( SELECT get_Org_child_list ( '" + orgId + @"' ) cids ) s
- WHERE find_in_set( org_id, cids ) and IS_ADMIN='0' and IS_DEL='0' " + whereStr + @" )
- SELECT t1.*, o.ORG_NAME, t.score,CASE WHEN t.id IS NULL THEN 0 ELSE 1 END AS is_exam
- FROM t1 LEFT JOIN fire_org o ON t1.ORG_ID = o.ORG_ID
- LEFT JOIN (select MAX(i.score+0) as score,MAX(i.id) as id,i.JOB_NUMBER from campparty.tbl_score_info i where i.paper_id = '" + paperinfoId
- + "' group by i.job_number ) t on t1.USERS_UID = t.job_number ";
- //if (!string.IsNullOrWhiteSpace(paperinfoId))
- //{
- // sql += " AND t.paper_id = '" + paperinfoId + "' ";
- //}
- if (!string.IsNullOrWhiteSpace(isExam))
- {
- switch (isExam)
- {
- case "0":
- sql += " WHERE LENGTH( IFNULL(t.id,''))<1 ";
- break;
- case "1":
- sql += " WHERE LENGTH( IFNULL(t.id,''))>0 ";
- break;
- }
- }
-
- sql += " ORDER BY t.score+0 desc,t1.ORG_ID, t1.id limit " + startNum + " ," + pageSize + " ";
-
- var dt = QueryTable(sql);
-
- returnstr = "{\"code\":0,\"msg\":\"success\",\"count\":" + dtNum.Rows[0][0] + ",\"data\":" + FangYar.Common.JsonHelper.ToJson(dt) + "}";
-
- }
- catch (Exception ex)
- {
- returnstr = "{\"code\":1,\"msg\":\"error\",\"count\":0,\"data\":[]}";
-
- string str = "查询党建考试异常:" + ex;
- FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo()
- {
- message = str,
- msgType = FangYar.Common.EnumLogMsgTypeEnum.Error,
- path = "UpdPartyEmpPhoto"
- });
- }
- return returnstr;
- }
-
- ///
- /// 更新党建库人员照片信息
- ///
- ///
- ///
- private string UpdPartyEmpPhoto(HttpContext context)
- {
- string returnstr = "{}";
- try
- {
- string sqlStr = " SELECT e.USERS_UID,e.EMP_NAME,e.PHOTO, d.emp_id,d.emp_photo from tbl_sys_emp e " +
- " left JOIN campparty.tbl_party_member d on e.USERS_UID=d.emp_id WHERE e.PHOTO<> d.emp_photo and e.PHOTO is not NULL and EMP_ID is not NULL " +
- " or ( e.PHOTO is not NULL and d.emp_photo is NULL and EMP_ID is not NULL ) ";
-
- var dt = QueryTable(sqlStr);
-
- for (int i = 0; i < dt.Rows.Count; i++)
- {
- string emp_id = dt.Rows[i]["USERS_UID"] + "";
- string emp_photo = dt.Rows[i]["PHOTO"] + "";
- string sqlUpd = " UPDATE campparty.tbl_party_member SET emp_photo='" + emp_photo + "' WHERE emp_id='" + emp_id + "' ";
-
- Execute(sqlUpd);
-
- }
-
- }
- catch (Exception ex)
- {
-
- string str = "同步党建人员照片异常:" + ex;
- FangYar.Common.MyLogHelper.WriteMsg(new FangYar.Common.LogInfoMo()
- {
- message = str,
- msgType = FangYar.Common.EnumLogMsgTypeEnum.Error,
- path = "UpdPartyEmpPhoto"
- });
- }
- return returnstr;
-
- }
-
- ///
- /// 执行查询语句,返回DataTable
- ///
- /// 查询语句
- /// DataTable
- private static DataTable QueryTable(string SQLString)
- {
- using (MySqlConnection connection = new MySqlConnection(connStr))
- {
- var dt = new DataTable();
- try
- {
- connection.Open();
- MySqlDataAdapter command = new MySqlDataAdapter(SQLString, connection);
- command.Fill(dt);
- }
- catch (Exception ex)
- {
- throw new Exception(ex.Message);
- }
- finally
- {
- if (connection.State == ConnectionState.Open)
- {
- connection.Close();
- MySqlConnection.ClearPool(connection);//加入此行可释放连接
- connection.Dispose();
- }
- GC.Collect();
- }
- return dt;
- }
- }
-
- ///
- /// 执行SQL语句,返回影响的记录数
- ///
- /// SQL语句
- /// 影响的记录数
- private int Execute(string SQLString)
- {
- using (MySqlConnection connection = new MySqlConnection(connStr))
- {
- try
- {
- using (MySqlCommand cmd = new MySqlCommand())
- {
- connection.Open();
- cmd.Connection = connection;
- cmd.CommandText = SQLString;
- int rows = cmd.ExecuteNonQuery();
- cmd.Parameters.Clear();
- //cmd.Prepare();
- return rows;
- }
- }
- catch (Exception E)
- {
- //throw new Exception(E.Message);
- return 0;
- }
- finally
- {
- if (connection.State == ConnectionState.Open)
- {
- connection.Close();
- MySqlConnection.ClearPool(connection);//加入此行可释放连接
- connection.Dispose();
- }
- GC.Collect();
- }
- }
- }
public bool IsReusable
{
diff --git a/Code/智慧营区/DOCManageAPP(阿克苏)/ashx/SysUserHandler.ashx.cs b/Code/智慧营区/DOCManageAPP(阿克苏)/ashx/SysUserHandler.ashx.cs
index 8f01f89..de097bb 100644
--- a/Code/智慧营区/DOCManageAPP(阿克苏)/ashx/SysUserHandler.ashx.cs
+++ b/Code/智慧营区/DOCManageAPP(阿克苏)/ashx/SysUserHandler.ashx.cs
@@ -549,7 +549,6 @@ namespace FangYar.WebUI.ashx
model.ID = usID;
bool flag1 = bll.Edit(model);
- new WebCommon.RedisHelp().RemoveLoginAllReids(model.USERS_UID);
//修改人员角色表里的数据
FangYar.BLL.TBL.SysUSerRulesBLL bll_ur = new BLL.TBL.SysUSerRulesBLL();
@@ -926,7 +925,6 @@ namespace FangYar.WebUI.ashx
if (bll.ChangePwd(model))
{
- new WebCommon.RedisHelp().RemoveLoginAllReids(model.USERS_UID);
msg = "修改成功!";
code = 1;
}
@@ -966,7 +964,6 @@ namespace FangYar.WebUI.ashx
if (bll.ChangePwd(model))
{
- new WebCommon.RedisHelp().RemoveLoginAllReids(model.USERS_UID);
msg = "修改成功!";
code = 1;
}
diff --git a/Code/智慧营区/WebApiTools/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/Code/智慧营区/WebApiTools/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
index 457f4a2d64e77e69d6f9ce6c772d5466d30089a7..fa7eda25b3db6efe49e080e5038c11c1745e9f4a 100644
GIT binary patch
delta 449
zcmccYILBqf5^lx?lO1G@WnS!E|7>e_jJIFBv!ic7e6YV;NVsE=YkY`naLD9^vhtHv
zd2TSqO?H$uGQy`c#yLMFH6}AJCAC5?qa-(nO^Shmfmm(fsY!at`FUxX>1@(KZ8;#@
z6bafkIg(e7F&U)RoS@p6g2d$P#Prl+m_4#Uds0ApEePucInO0EsWcs?Sq`WPhJD*&-G8T!Lg2d$P#Prl+mf+(2YsIO_&(3P4?3>mU*#v{j;szG2VXh&W^qT
n@xlIXA>oceuJIwR!6B2^>wRLpH+hl1HB^~CR%M&H4WgL=M*SzG
delta 26
hcmcayayN_D*C{C2nUPVLfq{WBaq>f+(2YsIO#pLn2%!J~
diff --git a/Code/智慧营区/营区OpenAPI/CampOpenWebAPI/obj/Debug/CampOpenWebAPI.csproj.AssemblyReference.cache b/Code/智慧营区/营区OpenAPI/CampOpenWebAPI/obj/Debug/CampOpenWebAPI.csproj.AssemblyReference.cache
new file mode 100644
index 0000000000000000000000000000000000000000..aa374aeba56803e55af6fce1db18024b91e96c82
GIT binary patch
literal 17693
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
G%nShd5>adb
diff --git a/Code/智慧营区/营区OpenAPI/WebAPILib/LibCommonUtil/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/Code/智慧营区/营区OpenAPI/WebAPILib/LibCommonUtil/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
index 33ff0119ed8bfc7febaf1abd3a3b74c9948e2058..020a0c17ccd5e7c707b8689583a9708a5c7d673e 100644
GIT binary patch
delta 91
zcmZoOdt|y{2{+@e$xFG7WnS!E|7>e_jJIFBv!ic7e6YV;NVsE=YkY`naL8sh9v^PT
Ri3HV6X5+Ek{8n6&832gqA|U_(
delta 127
zcmaE4+Ge(42{+@J$&TX2de5e9c;49&6Xg*Z7#|T8?^_vMm=o`pS|0OcN5hl7lb`lX
ld%k#zhUwOam&rRJi^?Ji^a@*rTt5^lz`lRpX?%e>gT{@K><7;nFLXGh4=)O;of
z@!VjHn|x5($Oxa(80Y+y)R@GA0=?w?ytK@8HYo-MhGdX7W5U`B5|gtN(^HFKdZj17
z6EVl{GH(7r#(I$P_?7MBH)Cui?9VU(8^(!*m3_+2(nP-SwN
zkR9V>!sdwydoeB|tn7iB_U5<3ER2jDgw+O%+B5bOR;DN;wwX&Tf{Ae^QEDgOl32yq
zOO(>heJTopsyw`my_PyFZZ6EaS1{7n;)p9
GG6Mh`Eih+S)Hw9)*zQ`-W
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
diff --git a/Code/智慧营区/营区OpenAPI/WebAPILib/西藏总队餐厅/LibDiningXZZD/obj/Debug/LibDiningXZZD.csproj.AssemblyReference.cache b/Code/智慧营区/营区OpenAPI/WebAPILib/西藏总队餐厅/LibDiningXZZD/obj/Debug/LibDiningXZZD.csproj.AssemblyReference.cache
new file mode 100644
index 0000000000000000000000000000000000000000..a0dbd511baef4eccfed6f51d4b1b7a518a354167
GIT binary patch
literal 21082
zcmd^H3wRXO72c8XN`yopf;^fQ#n$Znd~3PWZOx&}eHGSR%3U#oVo2~VX?M8@0!U#Saban~sgpej
zf=CcuN7umRfCIKC>cJ`Q0q_Jo62BuHP8U5|tybrZR?lVBye?{>i@LooYOyYAP8YST
zE^4TY8tbBlx~PHFYM_f6>7o|N3Uxu^sEBOQ+oMuSX~ygHxW{Qp4g4FGV)D6IA489G
z(>|7=T%%HoeB~~uZ3;b6VxjKo(Q5xwb$lhT+VVL4!$jOAalU?p*g_0
z2RQATZ!Nve@Zs;dcL?HUEL2`jR=%uZ(MO?S(G$@by(WlWxQ7B@7H-^7BgsiBjBpta
zuBFb)($!=R#ZnPzlW3;rvL3hB<6z0jUXPpTCVWlc6R9-NG@2I+&u(46`8;X~r0R_o
z%bihBTvF00N?d=H%_OB2C5%#7n8^Ba8~#jiUn8*tH(eKA>HHW7yy*?8of3XxFu!kFl6uz-Q5i_6?;7s(cC+LZ%27oj7K029!7Vc|FGs
zMeTrO3WTpXbH1k{Eb|nnoX+p^){L=O2<%4Ft6gFB)6N|W>MXS`E{;NF;gQNc2xmE?
z9ImW??f1?@1*j1)N}RcGe^rY|87j
z5%I{d?N4%J5hx`53~>X7MlP$8360zZAvDgaABQIaLTKzDBl}@PBPWP(cE1uwK@CaJN4X{yytvj&Yd;G&7Ct6@C?
z)K!a{`&?Yv0_XdEW!j-Q-&16Ggmvir0rUQ6qnZk1b=4iHs|M<-k-BObHITYZP>tbS
zwc=6mv>Obz;Pq5XmR1EO^k9CXTDX4ATki~dDDil=!AqNW_iKIp+x?blvyU%+?yb~K
z&Bo8O_LSUOsqgn|XOB5$f6Ob^3{75PId;?jLE3$iE{r-|U4cSDgj4EQ*0>d0i8AC&7X6n<8w9$~BmYHeLK|7#;t{8(w
zo&qD8f`v@j2+kzo0Y+;@bisA6$5R2&1Zr5Ur`+ct^`s6UOTd-UDs6ykXsWmo?DSo&
z5L1bgHUuQGWbltMC6A|u*x*Sb9Iv4OC8Ju}0BYC-qz?w8J03{f^PO$YFCE*uY-~&D
zvVPyj{#85oU0S%$b!o;lV>x9r
z*wZuyXaoXg>WX2g7oXP_(ABU^1PBQo*g^Q0?IIqWbG-hGzSrKk`&2Ra0fLAej{X8+
z#PjtLyk1j%Zq`{%lb|k91B%3qg=XeBZM2uX&+Vlg{+a+(94d_uh0<*}RvdF6?r4lI
zcT6#Oyhu}q_QI(=nLpD2;T
zCG)nSZ#7iTop9Uyqz?)Y6dpLO-}>6KO(V?94}Dkr^~B1acj>Qw6KB4!vgN7!pG)}j
ziB#tWU(WljladU-V&Yueo;|nbn(N&1S5-3yX_q`fO`YX=$Ud~S`!^E`A6wDm+NIK|
z8#f?QNnLz-Md}wn8A42x)5Xs$Xskma7M(UD%|T^qbz0h?(`)T$Bx6M^;_8hY&ZNW=
zDwd_?3*?{BMJ04U8h{Bf&l-7!WRbImb~)X&7v*@U0XTViFpkNtCye
zoHq|XApF4IaHSacEGM4sjgriwX>T4xZNLa9k=3R0Dwb3Ny0AOl6=VtJt@29O9I&Fn
z@~}XzB#7w82WX6-rBw+ZKN15z77a4sU=5kkF3%IU5O{aY-G=Q4P>vVeSLE}%#u##~
zSOuhHJAM_n2$fS`c;?9Z*3*@Tlhc?zFQ#N3ahFfn)vVfo_|aWC&o^G#H0Q~gwr7sb
zxufvuvo9SS+q^_mIxOdv0Y9BFWJz&Vmqlk!>b_nu{^PDiafd6HJUnRZnexT|Jkz>;
zo@3M1%c@uJx?^p^%HtmvK4@oJwv&I4>w9KF|5b-qk`p#P{mg=~6W<$l)2Fu|MR^?t
z8)1=RR?MSdTtms}^g5f}XwYXGHO6!sZPO#Cg}KL#$fGwVW*>|$X8ntHa70PHUJO^!
zMFFUL&O3IFc^{T^;{BJA=fJ^Dg(q;xLv(p;AnKQk*GY^{(Zx`4+2Y;%!mwK3sCgr^
zMy#Hk)wI}j>u+lRTlUJ8vG0`8OPhx6*)a3Sgo?NSF#pO|xeMkOKl$PChx^v9?tkZ?
z?Wf*3_m6?odwt)t&j$yc2}6b-IlX$;#m`%MPkzaqR5bMbMce*Me@rP{WqmUFugA>$
zY1@0c1o!iA|0|<=xi;&Ymj`|n?|QK6p3}&>c$t(i`!(<*k{i2FAZatEWu!Z785x;r
znKpxgn`SAxtt)7$k8=_ER0P+mI4@Er*5k#Th$}eZO$j+
z79u-^IfY&pUHT6!50D1ZNNW8NKx>s;7oxzyFEf6!;~y{z1gkK}M}pO{i3Aeyk$V1M
zpjAt*hZ+#3EIxE}UP+^2_s)T12B^-A`F_W?bD1hOE;(((M@L)g%i@kDE~>rn`IUdz
zIP%|DZ#njt7sqVq{r!f$Yj1bWUYZ`Cf4s}Zev_))dv2exXnn@LL*4(WeSPI~)L7Na
zm+5y0zxmFS*rV-n`;=?Iy$WUcM%#UM?1p(^kgS0~-A}{k>FXK>SV*hZziX@ICD|Ij2W!
zF3LDP*xttrs=z{4RO3=`630NwitFXb^8nE5k3U*?r1Egc)Q*N+Bq#AD6
z6u_Nm>UCk|i5@Cc4p(d{szh08FfVn$-gGk0?PV#j;tai0?vNW6>1x6)g5k)?78~QN
zVHMohry`cdgwQ!8p)^Ibeki0V{AFRB%X;0tR)dO49Y7IgvGVl2DyH-;)=h@EMY=UX
z9~j>8{+$~uMJd8yL`(X9vW6Low$o&-=;ELf=~~kX%yBKuZ&*2W>zGfUXgP86
zz^Nyi)B2{~v^;?s`|Sg(>JOcso3!lJ?sE%Aw&{AW{8!g=AGf8xvhItvuk6S+3DLjE;1NR%OoMX>nW`4lVv53G>LN4wK`E3|f_?7C2~sET
z_d&GtV-}gG)0mBF_;N)vCiD9l(Jk3BbFKjZ^@`28aG85L72(}$N~C{Sn26UIhVZTy
zV97i;OEYfD6<&c`dNU-RU}7%@U*V)&&iUcr1RY4_(YPH=sXG&USqgHTRE68)WkFIN
zLA>%SnP&$D1t(j_{q6uxy4`?`d`lmQZK-LLmOn()PUdKK!EI&+)~IV@p2b{9oSR_*yWlJ_Zm~Si=;kHS*zrEWIXX=>x=rkW~v)``(aQl$y^d
z5&1FQibpami%Ws={}`sDnDyXHBGRA2!KhM%{4hO1A6Mw7E~3dO3T9D?CCV5kV%(9Y
zO3Lk~Bg&K8Q{Il46eg~}8yS`U3^Fx|4n86fr+>FbC)N?=D-nBRT8ZdDNmv;)$P^(u
z_(-VrhZ}1R#m?tS*H_G6dN7bWxU$m8MQ}ySg`pO}@Ei(0LYKow@EHVbDc%XMBBEN}
i2$=o|5EF6}MHi)%-!T`Zxseh{6b{mn{SZ+*Z}=akC`S