/// <summary> /// 获取单位及其负责人列表 /// </summary> /// <returns></returns> public List<SMSInfo> GetOrgsAndAdminList() { // 创建passport.CQGJPassport对象,以实现对Passport数据库的查询 passport.CQGJPassport passportCQGJ = new CQGJ.passport.CQGJPassport(); // 定义并获取具有管理员权限的单位负责人列表 List<passport.User> userOwnRoles = passportCQGJ.GetUserListOwnRole().ToList(); // 定义短信的基本信息,包括接收短信的组织机构,具体接收短信者的个人信息列表 List<SMSInfo> orgsAndItsAdminList = new List<SMSInfo>(); // 构建接收短信机构与其具体负责人的一对一关系,形成orgsAndItsAdminList对象 foreach (var u in userOwnRoles) { SMSInfo SMSInfoToDest = new SMSInfo(); passport.User admin = new CQGJ.passport.User(); passport.b01 org = new CQGJ.passport.b01(); string orgCode = passportCQGJ.GetOrgCodeOfUser(u.UserID, true); passport.b01 b01 = passportCQGJ.GetOrg(orgCode); SMSInfoToDest.Destination = b01; SMSInfoToDest.AdminOfOrg = u; orgsAndItsAdminList.Add(SMSInfoToDest); } return orgsAndItsAdminList; }
/// <summary> /// 后台用户登录验证 /// </summary> public void Login() { //如果验证成功 if (GetString("username") != "") { passport.CQGJPassport cqgj = new CQGJ.passport.CQGJPassport(); //string OrgCode = cqgj.ValidateOrg(GetString("username"), Security.MD5Encrypt(GetString("password"))); CQGJ.passport.User user = cqgj.ValidateUser(GetString("username"), Security.MD5Encrypt(GetString("password"))); if (user != null) { string orgCode = cqgj.GetOrgCodeOfUser(user.UserID, true); if (orgCode != "") { HttpContext.Session["OrgID"] = ToOrgID(orgCode); HttpContext.Session["OrgCode"] = orgCode; HttpContext.Session["UserID"] = ToUserID(user.UserID); HttpContext.Session["PassportUserID"] = user.UserID; HttpContext.Session["Username"] = user.Username; HttpContext.Session["OrgType"] = cqgj.GetOrgType(orgCode); //从Passport那边获取用户所属角色列表信息 string rolenames = ""; string[] roleList = cqgj.GetRoleList(user.UserID); for (int i = 0; i < roleList.Length; i++) { rolenames += roleList[i] + ","; } HttpContext.Session["RoleList"] = rolenames; b01 org = cqgj.GetOrg(orgCode); HttpContext.Session["Org"] = org; FormsAuthentication.SetAuthCookie(orgCode, false); RedirectToAction("index", "admin"); } else { TempData["LoginStatus"] = "false"; } } else { TempData["LoginStatus"] = "false"; } } RenderView("Login"); }