private string systemNo = "a";//系统识别代码 public ActionResult Index() { ViewBag.ser = serURL; ViewBag.sso = ssoURL; var requestCookies = Request.Cookies["currentUser"]; if (requestCookies != null) { ViewBag.token = requestCookies.Value; } //验证权限 v = RoleHelper.CheckRole(systemNo, ViewBag.token); //获取租户信息 var tId = RoleHelper.AccountInfo().Where(x => x.UserName == v).Select(x => x.TenantId).FirstOrDefault(); var tenantModel = this.GetTenantInfo(tId); if (tenantModel != null) { ViewBag.TenantId = tenantModel.Tenant_id; ViewBag.Name = tenantModel.Name; } var res = new List <Products>(); if (tenantModel != null) { ViewBag.TenantId = tenantModel.Tenant_id; ViewBag.Name = tenantModel.Name; var _dbContext = new SSoTestEntities(tenantModel.Tenant_id); res = _dbContext.Products.ToList(); } ViewBag.v = v; return(View(res)); }
public ActionResult Post(string name, string pwd, string redirect_url, string client_id = null) { //TODO 模拟账号 var userList = RoleHelper.AccountInfo(); //限制暴力登录-设置IP登录频率 //验证登录名密码是否正确 TODO string token = ""; var ret = new ReturnBaseModel(); try { if (userList.Exists(x => x.UserName == name)) { if (pwd == "123") { //1写cache token = name + "_" + Guid.NewGuid().ToString().Substring(4, 12) + DateTime.Now.Millisecond; token = Common.Common.EncryptMD5(token); //将用户登录信息保存在cache中,用于验证登录 Utils.CacheHelper.Insert(token, name, 9000); #region 租户识别 //根据登录判别所属租户TODO var tenantId = userList.Where(x => x.UserName == name).Select(x => x.TenantId).FirstOrDefault(); //通过数据库查询tennat var tenants = TestTenantsData.GetTenatns(); var tenantData = tenants.Where(x => x.Tenant_id == tenantId).FirstOrDefault(); if (tenantData != null) { //Utils.CacheHelper.Insert(name, new Tenants { Id = tenantData.Id, Tenant_id = tenantData.Tenant_id, Name = tenantData.Name, CreatDate = DateTime.Now }, 300); ret.ReturnCode = "1"; ret.ReturnMsg = redirect_url + "/Base/CreateCookie" + "?token=" + token + "&Tenant_id=" + tenantData.Tenant_id + "&Tenant_name=" + tenantData.Name + "&redirect_url=" + redirect_url; } else { ret.ReturnCode = "-1"; ret.ReturnMsg = "租户信息获取失败"; } #endregion } else { ret.ReturnCode = "-1"; ret.ReturnMsg = "密码有误"; } } else { ret.ReturnCode = "-1"; ret.ReturnMsg = "账号未注册"; } } catch (Exception ex) { throw (ex); } //return Redirect(acom+"&others="+substation+"&main="+redirect_url); return(Json(ret)); }