public IActionResult Result([FromForm] string logmodel, [FromForm] string logmessage) { if (GetUserLoginState.LoginState(Request.Headers)) { string UserIP = Request.HttpContext.Connection.RemoteIpAddress.ToString(); string UserAgent = Request.Headers["User-Agent"].ToString(); string UserEmpID = JsonConvert.DeserializeObject <JObject>(Request.Headers["token"]).GetValue("UserEmpID").ToString(); PublicFunc.WriteUserLog(UserEmpID, UserIP, logmodel, logmessage, UserAgent); return(Ok(1)); } else { return(Ok(-1)); } }
public ActionResult Action([FromForm] string empid, [FromForm] string oldPass, [FromForm] string newPass) { if (GetUserLoginState.LoginState(Request.Headers)) { string UserIP = Request.HttpContext.Connection.RemoteIpAddress.ToString(); string UserAgent = Request.Headers["User-Agent"].ToString(); string UserEmpID = JsonConvert.DeserializeObject <JObject>(Request.Headers["token"]).GetValue("UserEmpID").ToString(); PublicFunc.WriteUserLog(UserEmpID, UserIP, "更改密码", "更改密码为:" + newPass, UserAgent); User user = new User(); return(Ok(user.ChangePass(empid, oldPass, newPass))); } else { return(Ok(-1)); } }
public IActionResult Result([FromForm] string resName, [FromForm] string orderUID, [FromForm] string dayshift) { if (GetUserLoginState.LoginState(Request.Headers)) { string UserIP = Request.HttpContext.Connection.RemoteIpAddress.ToString(); string UserAgent = Request.Headers["User-Agent"].ToString(); string UserEmpID = JsonConvert.DeserializeObject <JObject>(Request.Headers["token"]).GetValue("UserEmpID").ToString(); PublicFunc.WriteUserLog(UserEmpID, UserIP, "拉取订单", "拉取订单:" + orderUID + ",到设备:" + resName, UserAgent); MCanDownThisRes downThisRes = new MCanDownThisRes(); return(Ok(downThisRes.BeginDown_Call(orderuid: orderUID, resName: resName, dayshift: dayshift))); } else { return(Ok(-1)); } }
public IActionResult Result([FromForm] string bean) { if (GetUserLoginState.LoginState(Request.Headers)) { string UserIP = Request.HttpContext.Connection.RemoteIpAddress.ToString(); string UserAgent = Request.Headers["User-Agent"].ToString(); string UserEmpID = JsonConvert.DeserializeObject <JObject>(Request.Headers["token"]).GetValue("UserEmpID").ToString(); PublicFunc.WriteUserLog(UserEmpID, UserIP, "换班", "换班", UserAgent); MEndWork mEnd = new MEndWork(); bool result = mEnd.EndWork(bean); return(Ok(result)); } else { return(Ok(-1)); } }
public IActionResult Result([FromForm] string bean) { if (GetUserLoginState.LoginState(Request.Headers)) { string UserIP = Request.HttpContext.Connection.RemoteIpAddress.ToString(); string UserAgent = Request.Headers["User-Agent"].ToString(); string UserEmpID = JsonConvert.DeserializeObject <JObject>(Request.Headers["token"]).GetValue("UserEmpID").ToString(); string OrderUID = JsonConvert.DeserializeObject <JObject>(bean).GetValue("orderUID").ToString(); string Opname = JsonConvert.DeserializeObject <JObject>(bean).GetValue("pmOpName").ToString(); PublicFunc.WriteUserLog(UserEmpID, UserIP, "订单暂停", "OrderUID:" + OrderUID + ",工序名称:" + Opname, UserAgent); MPauseOrder pauseOrder = new MPauseOrder(); return(Ok(pauseOrder.PauseOrder_Call(bean))); } else { return(Ok(-1)); } }
public IActionResult Result([FromForm] string empid) { //退出登录 if (GetUserLoginState.LoginState(Request.Headers)) { string UserIP = Request.HttpContext.Connection.RemoteIpAddress.ToString(); string UserAgent = Request.Headers["User-Agent"].ToString(); string UserEmpID = JsonConvert.DeserializeObject <JObject>(Request.Headers["token"]).GetValue("UserEmpID").ToString(); PublicFunc.WriteUserLog(UserEmpID, UserIP, "退出登陆", "退出登陆", UserAgent); User user = new User(); return(Ok(user.SignOut(empid))); } else { return(Ok(-1)); } }
public CLogin Result([FromForm] string username, [FromForm] string userpass) { Mlogin mlogin = new Mlogin { //这个信息只能在controller里获取,model里不能获取 UserIP = Request.HttpContext.Connection.RemoteIpAddress.ToString(), UserAgent = Request.Headers["User-Agent"].ToString() }; MD5 md5 = MD5.Create(); //PMStaticModels.UserModels.PMUser.UserSysID userpass += username; string userPass = ""; byte[] s = md5.ComputeHash(Encoding.UTF8.GetBytes(userpass.Trim())); for (int i = 0; i < s.Length; i++) { // 将得到的字符串使用十六进制类型格式。格式后的字符是小写的字母,如果使用大写(X)则格式后的字符是大写字符 userPass += s[i].ToString("X"); } CLogin cLogin = mlogin.ForceOut(username, userPass); if (cLogin.LoginState == 1) { Response.Cookies.Append("EmpID", PmUser.EmpID.ToString(), new CookieOptions() { IsEssential = true }); Response.Cookies.Append("UserGuid", PmUser.UserGuid, new CookieOptions() { IsEssential = true }); if (PmUser.IsAdmin == true) { Response.Cookies.Append("MD5", PublicFunc.GetMd5("ADMIN" + Guid.NewGuid().ToString()), new CookieOptions() { IsEssential = true }); } } PublicFunc.WriteUserLog(PmUser.EmpID.ToString(), mlogin.UserIP, "强制登出", "用户选择强制登出", mlogin.UserAgent); return(cLogin); }
public IActionResult ActionResult([FromForm] string bean) { if (GetUserLoginState.LoginState(Request.Headers)) { string UserIP = Request.HttpContext.Connection.RemoteIpAddress.ToString(); string UserAgent = Request.Headers["User-Agent"].ToString(); string UserEmpID = JsonConvert.DeserializeObject <JObject>(Request.Headers["token"]).GetValue("UserEmpID").ToString(); JObject obj = JsonConvert.DeserializeObject <JObject>(bean); string changeresname = obj.GetValue("changeResName").ToString(); string thisresname = obj.GetValue("mesResName").ToString(); string orderUID = obj.GetValue("orderUID").ToString(); PublicFunc.WriteUserLog(UserEmpID, UserIP, "订单推送", "orderUID: " + orderUID + ";订单推送:" + thisresname + "=>" + changeresname, UserAgent); MChangeRes changeRes = new MChangeRes(); return(Ok(changeRes.ChangeResource_Call(bean))); } else { return(Ok(-1)); } }
public CLogin Login(string userName, string userPass) { if (CUserInfo.LogedUserInfo == null) { CUserInfo.LogedUserInfo = new Dictionary <string, string>(); } // 获取用户的IP地址和浏览器信息 SqlCommand cmd = PmConnections.ModCmd(); cmd.CommandText = "SELECT * FROM wapEmpList WHERE " + PmSettings.LoginColName + " = '" + userName + "'"; DataTable dtuserdata = new DataTable(); SqlDataAdapter dataAdapter = new SqlDataAdapter(cmd); dataAdapter.Fill(dtuserdata); dataAdapter.Dispose(); cmd.Connection.Close(); if (dtuserdata.Rows.Count > 0) { DataRow data = PublicFunc.CheckEmptyVal(dtuserdata.Clone(), dtuserdata.Rows[0]); PmUser.EmpID = Convert.ToInt32(data["empID"]); PmUser.UserName = data["empName"].ToString(); PmUser.EmpWorkID = data["empWorkID"].ToString(); PmUser.UserDesc = data["dept"].ToString(); PmUser.PhoneNumber = data["phoneNum"].ToString(); PmUser.Email = data["email"].ToString(); PmUser.UserSysID = Convert.ToInt32(data["sysID"]); PmUser.UsercusID = Convert.ToInt32(data["cusID"]); PmUser.UserShopUserGroupID = data["shopUserGroupID"].ToString(); PmUser.UserSysName = PublicFunc.GetSysName(PmUser.UserSysID); PmUser.UserIpAdress = UserIP; PmUser.UserPass = userPass; PmUser.UserAgent = UserAgent; } CLogin login = new CLogin(); //查询是否有这个用户名 if (dtuserdata.Rows.Count == 0) { login.LoginState = 0; login.Message = "没有这个用户名."; } //判断密码是否正确 else { //服务器获取登录状态 cmd = PmConnections.CtrlCmd(); cmd.CommandText = "SELECT * FROM wapUserstate WHERE empid = '" + userName + "'"; DataTable dtuserstate = new DataTable(); dataAdapter = new SqlDataAdapter(cmd); dataAdapter.Fill(dtuserstate); dataAdapter.Dispose(); cmd.Connection.Close(); //判断是否是登录状态 if (dtuserstate.Rows.Count > 0) { //查询用户是否在线 if (Convert.ToBoolean(dtuserstate.Rows[0]["online"])) { //用户在线,返回在线消息 login.LoginState = 2; login.Message = "用户已经在IP:" + dtuserstate.Rows[0]["userIpaddress"] + " 上登陆."; } else { //用户不在线,但是密码错误 DateTime lasterrortime = Convert.ToDateTime(dtuserstate.Rows[0]["errorTime"]); int errortimes = Convert.ToInt32(dtuserstate.Rows[0]["errorTimes"]); int haslogintimes = pwderrTimes - errortimes; if (haslogintimes > 0) { //可以再次登录 if (userPass == dtuserdata.Rows[0]["password"].ToString()) { //密码正确,返回登录信息,记录用户为正常登录 login.LoginState = 1; login.Message = "登录成功."; login.UserGuiD = Guid.NewGuid().ToString(); PmUser.UserGuid = login.UserGuiD; login.EmpID = PmUser.EmpID; if (CUserInfo.LogedUserInfo.ContainsKey(PmUser.EmpID.ToString())) { CUserInfo.LogedUserInfo[PmUser.EmpID.ToString()] = PmUser.UserGuid; } else { CUserInfo.LogedUserInfo.Add(PmUser.EmpID.ToString(), PmUser.UserGuid); } //更新用户信息类 PmUser.UserGuid = login.UserGuiD; //查询用户是不是管理员 PmUser.IsAdmin = IsAdmin(PmUser.EmpID, PmUser.UserSysID); //获取用户的功能列表 PmUser.FunctionList = new List <string>(); if (PmUser.IsAdmin == true) { PmUser.FunctionList.Add("systemsetting"); PmUser.FunctionList.Add("reportsystem"); PmUser.FunctionList.Add("datacenter"); PmUser.FunctionList.Add("planboard"); } else { cmd = PmConnections.ModCmd(); cmd.CommandText = "SELECT shopUsergroupid FROM wapUser WHERE userName in (SELECT USERNAME FROM wapEmpUserMap WHERE empid = '" + PmUser.EmpID + "')"; SqlDataReader rd = cmd.ExecuteReader(); while (rd.Read()) { if (rd[0].ToString().ToUpper() == "CFM") { PmUser.FunctionList.Add("reportsystem"); } if (rd[0].ToString().ToUpper() == "REP") { PmUser.FunctionList.Add("reportsystem"); } if (rd[0].ToString().ToUpper() == "VIEW") { PmUser.FunctionList.Add("datacenter"); } if (rd[0].ToString().ToUpper() == "BOARD") { PmUser.FunctionList.Add("planboard"); } } rd.Close(); cmd.Connection.Close(); } //更新登录状态,这里是update cmd = PmConnections.CtrlCmd(); cmd.CommandText = "UPDATE wapUserstate SET userIpaddress = '" + PmUser.UserIpAdress + "',onLine = '1',errorTimes='0',errorTime='" + DateTime.Now + "',message = '登录成功',userGuid = '" + PmUser.UserGuid + "'WHERE empid = '" + GetUpdateVal() + "'"; cmd.ExecuteNonQuery(); cmd.Connection.Close(); PublicFunc.WriteUserLog(PmUser.EmpID.ToString(), UserIP, "用户登录", "登陆成功.", UserAgent); } else { //密码错误,返回登录信息,记录用户密码错误 errortimes++; login.LoginState = 0; login.Message = "用户密码错误!再输入" + (3 - errortimes).ToString() + "次错误密码后,账号将被锁定5分钟."; //更新登录状态,这里是update cmd = PmConnections.CtrlCmd(); cmd.CommandText = "UPDATE wapUserstate SET userIpaddress = '" + PmUser.UserIpAdress + "',onLine = '0',errorTimes='" + errortimes + "',errorTime='" + DateTime.Now + "',message = '密码错误',userGuid = '" + PmUser.UserGuid + "'WHERE empid = '" + GetUpdateVal() + "'"; cmd.ExecuteNonQuery(); cmd.Connection.Close(); PublicFunc.WriteUserLog(PmUser.EmpID.ToString(), UserIP, "用户登录", "密码错误,错误次数:" + errortimes, UserAgent); } } else { if ((DateTime.Now - lasterrortime).TotalSeconds > 300) { //可以验证密码登录 if (userPass == dtuserdata.Rows[0]["password"].ToString()) { login.LoginState = 1; login.Message = "登录成功."; login.UserGuiD = Guid.NewGuid().ToString(); PmUser.UserGuid = login.UserGuiD; login.EmpID = PmUser.EmpID; if (CUserInfo.LogedUserInfo.ContainsKey(PmUser.EmpID.ToString())) { CUserInfo.LogedUserInfo[PmUser.EmpID.ToString()] = PmUser.UserGuid; } else { CUserInfo.LogedUserInfo.Add(PmUser.EmpID.ToString(), PmUser.UserGuid); } //更新用户信息类 PmUser.UserGuid = login.UserGuiD; //查询用户是不是管理员 PmUser.IsAdmin = IsAdmin(PmUser.EmpID, PmUser.UserSysID); //获取用户的功能列表 PmUser.FunctionList = new List <string>(); if (PmUser.IsAdmin == true) { PmUser.FunctionList.Add("systemsetting"); PmUser.FunctionList.Add("reportsystem"); PmUser.FunctionList.Add("datacenter"); PmUser.FunctionList.Add("planboard"); } else { cmd = PmConnections.ModCmd(); cmd.CommandText = "SELECT shopUSergroupid FROM wapUser WHERE userName in (SELECT USERNAME FROM wapEmpUserMap WHERE empid = '" + PmUser.EmpID + "') and sysid = '" + PmUser.UserSysID + "'"; SqlDataReader rd = cmd.ExecuteReader(); while (rd.Read()) { if (rd[0].ToString().ToUpper() == "CFM") { PmUser.FunctionList.Add("reportsystem"); } if (rd[0].ToString().ToUpper() == "REP") { PmUser.FunctionList.Add("reportsystem"); } if (rd[0].ToString().ToUpper() == "VIEW") { PmUser.FunctionList.Add("datacenter"); } if (rd[0].ToString().ToUpper() == "BOARD") { PmUser.FunctionList.Add("planboard"); } } rd.Close(); cmd.Connection.Close(); } //更新登录状态,这里是update cmd = PmConnections.CtrlCmd(); cmd.CommandText = "UPDATE wapUserstate SET userIpaddress = '" + PmUser.UserIpAdress + "',onLine = '1',errorTimes='0',errorTime='" + DateTime.Now + "',message = '登录成功',userGuid = '" + PmUser.UserGuid + "' WHERE empid = '" + GetUpdateVal() + "'"; cmd.ExecuteNonQuery(); cmd.Connection.Close(); PublicFunc.WriteUserLog(PmUser.EmpID.ToString(), UserIP, "用户登录", "登陆成功.", UserAgent); } //用户密码错误记录密码错误次数 else { //删除登录状态,重新登录 cmd = PmConnections.CtrlCmd(); cmd.CommandText = "DELETE FROM wapUserstate WHERE empid = '" + GetUpdateVal() + "'"; cmd.ExecuteNonQuery(); cmd.Connection.Close(); //正常退出的用户,判断用户密码是否正确 if (userPass == dtuserdata.Rows[0]["password"].ToString()) { //密码正确,返回登录信息,记录用户为正常登录 login.LoginState = 1; login.Message = "登录成功."; login.UserGuiD = Guid.NewGuid().ToString(); PmUser.UserGuid = login.UserGuiD; login.EmpID = PmUser.EmpID; if (CUserInfo.LogedUserInfo.ContainsKey(PmUser.EmpID.ToString())) { CUserInfo.LogedUserInfo[PmUser.EmpID.ToString()] = PmUser.UserGuid; } else { CUserInfo.LogedUserInfo.Add(PmUser.EmpID.ToString(), PmUser.UserGuid); } //更新用户信息类 PmUser.UserGuid = login.UserGuiD; //查询用户是不是管理员 PmUser.IsAdmin = IsAdmin(PmUser.EmpID, PmUser.UserSysID); //获取用户的功能列表 PmUser.FunctionList = new List <string>(); if (PmUser.IsAdmin == true) { PmUser.FunctionList.Add("systemsetting"); PmUser.FunctionList.Add("reportsystem"); PmUser.FunctionList.Add("datacenter"); PmUser.FunctionList.Add("planboard"); } else { cmd = PmConnections.ModCmd(); cmd.CommandText = "SELECT shopUSergroupid FROM wapUser WHERE userName in (SELECT USERNAME FROM wapEmpUserMap WHERE empid = '" + PmUser.EmpID + "') and sysid = '" + PmUser.UserSysID + "'"; SqlDataReader rd = cmd.ExecuteReader(); while (rd.Read()) { if (rd[0].ToString().ToUpper() == "CFM") { PmUser.FunctionList.Add("reportsystem"); } if (rd[0].ToString().ToUpper() == "REP") { PmUser.FunctionList.Add("reportsystem"); } if (rd[0].ToString().ToUpper() == "VIEW") { PmUser.FunctionList.Add("datacenter"); } if (rd[0].ToString().ToUpper() == "BOARD") { PmUser.FunctionList.Add("planboard"); } } rd.Close(); cmd.Connection.Close(); } //更新登录状态 cmd = PmConnections.CtrlCmd(); cmd.CommandText = "INSERT wapUserstate (empID,empName,userPass,userIpaddress,onLine,errorTimes,errorTime,message,userGuid) VALUES ('" + GetUpdateVal() + "','" + PmUser.UserName + "','" + PmUser.UserPass + "','" + PmUser.UserIpAdress + "','1','0','" + DateTime.Now + "','登录成功','" + PmUser.UserGuid + "')"; cmd.ExecuteNonQuery(); cmd.Connection.Close(); if (CUserInfo.LogedUserInfo.ContainsKey(PmUser.UserName)) { CUserInfo.LogedUserInfo[PmUser.UserName] = PmUser.UserGuid; } else { CUserInfo.LogedUserInfo.Add(PmUser.UserName, PmUser.UserGuid); } PublicFunc.WriteUserLog(PmUser.EmpID.ToString(), UserIP, "用户登录", "登陆成功.", UserAgent); } else { //密码错误,返回登录信息,记录用户密码错误 login.LoginState = 0; login.Message = "用户密码错误!再输入2次错误密码后,账号将被锁定5分钟."; //更新登录状态 cmd = PmConnections.CtrlCmd(); cmd.CommandText = "INSERT wapUserstate (empID,empName,userPass,userIpaddress,onLine,errorTimes,errorTime,message,userGuid) VALUES ('" + GetUpdateVal() + "','" + PmUser.UserName + "','" + PmUser.UserPass + "','" + PmUser.UserIpAdress + "','0','1','" + DateTime.Now + "','密码错误','" + PmUser.UserGuid + "')"; cmd.ExecuteNonQuery(); cmd.Connection.Close(); PublicFunc.WriteUserLog(PmUser.EmpID.ToString(), UserIP, "用户登录", "密码错误,错误次数:1", UserAgent); }; } } else { login.LoginState = 0; login.Message = "用户被锁定,请在" + (300 - (DateTime.Now - lasterrortime).TotalSeconds).ToString("0") + "秒后登陆."; PublicFunc.WriteUserLog(PmUser.EmpID.ToString(), UserIP, "用户锁定", "用户由于密码错误超过3次,用户锁定.", UserAgent); } } } } else { //正常退出的用户,判断用户密码是否正确 if (userPass == dtuserdata.Rows[0]["password"].ToString()) { //密码正确,返回登录信息,记录用户为正常登录 login.LoginState = 1; login.Message = "登录成功."; login.UserGuiD = Guid.NewGuid().ToString(); PmUser.UserGuid = login.UserGuiD; login.EmpID = PmUser.EmpID; if (CUserInfo.LogedUserInfo.ContainsKey(PmUser.EmpID.ToString())) { CUserInfo.LogedUserInfo[PmUser.EmpID.ToString()] = PmUser.UserGuid; } else { CUserInfo.LogedUserInfo.Add(PmUser.EmpID.ToString(), PmUser.UserGuid); } //更新用户信息类 PmUser.UserGuid = login.UserGuiD; //查询用户是不是管理员 PmUser.IsAdmin = IsAdmin(PmUser.EmpID, PmUser.UserSysID); //获取用户的功能列表 PmUser.FunctionList = new List <string>(); if (PmUser.IsAdmin == true) { PmUser.FunctionList.Add("systemsetting"); PmUser.FunctionList.Add("reportsystem"); PmUser.FunctionList.Add("datacenter"); PmUser.FunctionList.Add("planboard"); } else { cmd = PmConnections.ModCmd(); cmd.CommandText = "SELECT shopUSergroupid FROM wapUser WHERE userName in (SELECT USERNAME FROM wapEmpUserMap WHERE empid = '" + PmUser.EmpID + "') and sysid = '" + PmUser.UserSysID + "'"; SqlDataReader rd = cmd.ExecuteReader(); while (rd.Read()) { if (rd[0].ToString().ToUpper() == "CFM") { PmUser.FunctionList.Add("reportsystem"); } if (rd[0].ToString().ToUpper() == "REP") { PmUser.FunctionList.Add("reportsystem"); } if (rd[0].ToString().ToUpper() == "VIEW") { PmUser.FunctionList.Add("datacenter"); } if (rd[0].ToString().ToUpper() == "BOARD") { PmUser.FunctionList.Add("planboard"); } } rd.Close(); cmd.Connection.Close(); } //更新登录状态 cmd = PmConnections.CtrlCmd(); cmd.CommandText = "INSERT wapUserstate (empID,empName,userPass,userIpaddress,onLine,errorTimes,errorTime,message,userGuid) VALUES ('" + GetUpdateVal() + "','" + PmUser.UserName + "','" + PmUser.UserPass + "','" + PmUser.UserIpAdress + "','1','0','" + DateTime.Now + "','登录成功','" + PmUser.UserGuid + "')"; cmd.ExecuteNonQuery(); cmd.Connection.Close(); PublicFunc.WriteUserLog(PmUser.EmpID.ToString(), UserIP, "用户登录", "登陆成功.", UserAgent); } else { //密码错误,返回登录信息,记录用户密码错误 login.LoginState = 0; login.Message = "用户密码错误!再输入2次错误密码后,账号将被锁定5分钟."; //更新登录状态 cmd = PmConnections.CtrlCmd(); cmd.CommandText = "INSERT wapUserstate (empID,empName,userPass,userIpaddress,onLine,errorTimes,errorTime,message,userGuid) VALUES ('" + GetUpdateVal() + "','" + PmUser.UserName + "','" + PmUser.UserPass + "','" + PmUser.UserIpAdress + "','0','1','" + DateTime.Now + "','密码错误','" + PmUser.UserGuid + "')"; cmd.ExecuteNonQuery(); cmd.Connection.Close(); PublicFunc.WriteUserLog(PmUser.EmpID.ToString(), UserIP, "用户登录", "密码错误,错误次数:1", UserAgent); } } } return(login); }