private void GetRoleUserNameList(Dictionary <string, object> dicPar) { //要检测的参数信息 List <string> pra = new List <string>() { "stocode", "roletype" }; //检测方法需要的参数 if (!CheckActionParameters(dicPar, pra)) { return; } //获取参数信息 string stocode = dicPar["stocode"].ToString(); string roletype = dicPar["roletype"].ToString(); //调用逻辑 dt = bll.GetRoleUserNameList(stocode, roletype); if (dt != null && dt.Rows.Count > 0) { DataTable dtUser = new bllAdmins().GetPagingListInfo("", "", int.MaxValue, 1, "", "", out int recnums, out int pagenums); foreach (DataRow dr in dt.Rows) { string userid = dr["UserId"].ToString(); if (dtUser.Select("userid='" + userid + "'").Length > 0) { DataRow dr_sto = dtUser.Select("userid='" + userid + "'")[0]; dr["ucname"] = dr_sto["uname"].ToString(); } } } ReturnListJson(dt, null, null, null, null); }
private void CheckUser(string username, string password) { bllAdmins bll = new bllAdmins(); string userpwd = OEncryp.Encrypt(password); AdminsEntity adminEntity = bll.GetEntitySigInfo(" WHERE uname='" + username + "' AND upwd='" + userpwd + "'"); if (adminEntity.userid > 0) { LoginedUserEntity loginedUser = new LoginedUserEntity(adminEntity.userid.ToString(), adminEntity.upwd, adminEntity.uname, adminEntity.umobile); DataTable dtPermission = bll.GetPermissionInfo(loginedUser.GUID, loginedUser.UserID, loginedUser.UserID); if (dtPermission != null && dtPermission.Rows.Count > 0) { loginedUser.Permission = dtPermission; loginedUser.SetLoginCookie(); //string appJson = JsonHelper.ObjectToJSON(loginedUser); Context.Cache.Insert("logincache_" + loginedUser.UserID, loginedUser); loginedUser.SetLoginCookie(); Response.Redirect("index.html"); } else { Message.InnerHtml = "您的帐号无效,请联系管理员!"; } } else { Message.InnerHtml = "用户或密码错误!"; } }
/// <summary> /// 设置页面信息 /// </summary> /// <param name="id">ID</param> private void SetPage(string id) { bllAdmins bll = new bllAdmins(); DataTable dt = bll.GetPagingSigInfo("0", "0", " where userid=" + id); if (dt != null && dt.Rows.Count > 0) { DataRow dr = dt.Rows[0]; uname.InnerHtml = dr["uname"].ToString(); pwd.InnerHtml = dr["upwd"].ToString(); realname.InnerHtml = dr["realname"].ToString(); rolname.InnerHtml = dr["rolename"].ToString(); empcode.InnerHtml = dr["empcode"].ToString(); umobile.InnerHtml = dr["umobile"].ToString(); rolname.InnerHtml = dr["rolename"].ToString(); descr.InnerHtml = dr["remark"].ToString(); } }
/// <summary> /// 用户名密码登录 /// </summary> /// <param name="dicPar"></param> private void LoginByPassword(Dictionary <string, object> dicPar) { try { //要检测的参数信息 List <string> pra = new List <string>() { "uname", "password", "depart", "strcode" }; //检测方法需要的参数 if (!CheckActionParameters(dicPar, pra)) { return; } StringBuilder postStr = new StringBuilder(); //获取参数信息 string uname = dicPar["uname"].ToString(); string password = dicPar["password"].ToString(); string depart = dicPar["depart"].ToString(); string stocode = dicPar["strcode"].ToString(); string ShortMesUrl = Helper.GetAppSettings("ServiceUrl") + "/WSadmins.ashx"; postStr.Append("actionname=loginbypassword¶meters={" + string.Format("'GUID':'{0}'", "") + string.Format(",'USER_ID': '{0}'", "") + string.Format(",'uname': '{0}'", uname) + string.Format(",'password': '******'", password) + "}"); //键值对 string strAdminJson = Helper.HttpWebRequestByURL(ShortMesUrl, postStr.ToString()); if (!string.IsNullOrEmpty(strAdminJson) && strAdminJson.Trim() != "") { string status = ""; string mes = ""; DataSet ds = JsonHelper.NewJsonToDataSet(strAdminJson, out status, out mes); if (status != "0") { ReturnResultJson("2", "验证失败"); return; } DataTable dtAdmin = ds.Tables["data"]; DataTable dtReturn = dtAdmin.Clone(); dtReturn.Columns.Add("RoleType"); if (dtAdmin != null && dtAdmin.Rows.Count > 0) { string adminStocode = ""; //判断用户的门店 if (dtAdmin.Rows[0]["scope"].ToString() == "2") { //从emp表中获取权限门店 int nums = 0; DataTable dtEmployee = new bllAdmins().GetPagingListInfo(dtAdmin.Rows[0]["GUID"].ToString(), dtAdmin.Rows[0]["userid"].ToString(), int.MaxValue, 1, "t.userid=" + dtAdmin.Rows[0]["userid"].ToString(), "", out nums, out nums); if (dtEmployee != null && dtEmployee.Rows.Count > 0) { adminStocode = dtEmployee.Rows[0]["empstocode"].ToString(); } } else { adminStocode = dtAdmin.Rows[0]["stocode"].ToString(); } if (!string.IsNullOrWhiteSpace(stocode) && !adminStocode.Contains(stocode)) { ReturnResultJson("3", "该用户没有该门店的权限"); return; } DataRow dr = dtAdmin.Rows[0]; dtAdmin.Rows[0]["GUID"] = Guid.NewGuid().ToString(); //添加登陆记录,如果存在则为修改,主要作用与单点登陆 string id = "0"; if (HttpContext.Current.Cache.Get("empcodesing" + stocode + depart + dtAdmin.Rows[0]["uname"].ToString()) != null) { HttpContext.Current.Cache.Remove("empcodesing" + stocode + depart + dtAdmin.Rows[0]["uname"].ToString()); } HttpContext.Current.Cache.Insert("empcodesing" + stocode + depart + dtAdmin.Rows[0]["uname"].ToString(), dtAdmin.Rows[0]["GUID"].ToString()); //获取用户的门店下的角色 DataTable dtUserRole = new bllTB_UserRole().GetUserStoreRole(dr["userid"].ToString()); string RoleIds = string.Empty; string RoleTypes = string.Empty; if (dtUserRole != null) { foreach (DataRow drRole in dtUserRole.Rows) { RoleIds += drRole["id"].ToString() + ","; RoleTypes += "," + drRole["RoleType"].ToString() + ","; } } DataRow drAdd = dtReturn.NewRow(); foreach (DataColumn dc in dtAdmin.Columns) { drAdd[dc.ColumnName] = dr[dc.ColumnName]; } drAdd["RoleType"] = RoleTypes; dtReturn.Rows.Add(drAdd); if (string.IsNullOrEmpty(RoleIds)) { ReturnResultJson("3", "该用户没有角色信息,无法登陆"); return; } HttpContext.Current.Cache.Insert(dr["userid"].ToString() + "1", RoleIds);//保存用户角色ID到缓存中,多个使用,分隔 } } } catch (Exception ex) { ErrorLog.WriteErrorMessage(ErrorLog.LogType.baselog, ex.ToString()); ReturnResultJson("2", ex.Message); return; } }