/// <summary> /// 得到所有角色信息 /// </summary> /// <returns></returns> public ActionResult GetRoleList(RoleSearchDTO dto) { var result = UserAuthorityProvider.GetRoleList(dto); return(Json(result, JsonRequestBehavior.AllowGet)); }
/// <summary> /// 导出角色管理 /// </summary> /// <param name="dto"></param> /// <returns></returns> public ActionResult ExportRole(RoleSearchDTO dto) { string result = null; List <RoleResultDTO> pp = null; pp = UserAuthorityProvider.GetRoleList(dto); string strTemplateFile = Server.MapPath(@"~/TempLate/RoleTemplate.xlsx"); string strGenarateDir = Server.MapPath(@"~/TempFile"); string strGenarateFile = Guid.NewGuid().ToString("N") + ".xlsx"; string strExportFile = strGenarateDir + "\\" + strGenarateFile; List <object> ratelist = new List <object>(); //角色 pp.ForEach(g => { //一级权限 var aa = g.RoleAuthority.Where(w => w.StructureID.Length == 3).ToList(); if (aa.Count == 0) { Models.Model.Excel.ExcelRole er = new Models.Model.Excel.ExcelRole(); er.角色名称 = g.RoleName; er.角色类别 = g.RoleTypeStr; ratelist.Add(er); } aa.ForEach(a => { //二级权限 var bb = g.RoleAuthority.Where(w => w.StructureID.Length == 6 && w.StructureID.StartsWith(a.StructureID)).ToList(); if (bb.Count == 0) { Models.Model.Excel.ExcelRole er = new Models.Model.Excel.ExcelRole(); er.角色名称 = g.RoleName; er.角色类别 = g.RoleTypeStr; er.一级模块权限 = a.StructureName; ratelist.Add(er); } bb.ForEach(b => { //三级权限 var cc = g.RoleAuthority.Where(w => w.StructureID.Length == 9 && w.StructureID.StartsWith(b.StructureID)).ToList(); if (cc.Count == 0) { Models.Model.Excel.ExcelRole er = new Models.Model.Excel.ExcelRole(); er.角色名称 = g.RoleName; er.角色类别 = g.RoleTypeStr; er.一级模块权限 = a.StructureName; er.二级模块权限 = b.StructureName; ratelist.Add(er); } cc.ForEach(c => { //三级权限功能按钮 Models.Model.Excel.ExcelRole er = new Models.Model.Excel.ExcelRole(); er.角色名称 = g.RoleName; er.角色类别 = g.RoleTypeStr; er.一级模块权限 = a.StructureName; er.二级模块权限 = b.StructureName; er.级模块权限 = c.StructureName; er.功能权限 = string.Join(",", GlobalStaticData.ButtonInfo.Where(w => (c.RoleButtonAuthority | w.ButtonID) == c.RoleButtonAuthority).Select(s => s.ButtonValue)); ratelist.Add(er); }); }); }); }); if (Common.ExcelHelper.Export(strTemplateFile, strGenarateDir, strGenarateFile, ratelist, "Sheet1")) { result = strGenarateFile; } return(Json(result)); }
private bool CheckUserInfo(object obj) { bool result = true; List <ExcelUser> exceldto = (List <ExcelUser>)obj; UserSearchDTO dto = new UserSearchDTO(); dto.rows = 100000000; dto.page = 1; var UserInfoList = UserAuthorityProvider.GetUser(dto); DistributorSearchDTO disdto = new DistributorSearchDTO(); disdto.page = 1; disdto.rows = 1000000000; var distributorlist = DistributorProvider.GetDistributorList(disdto);//所有经销商 RoleSearchDTO roleSearch = new RoleSearchDTO(); var rolelist = UserAuthorityProvider.GetRoleList(roleSearch); string strimporter = ((UserLoginDTO)Session["UserLoginInfo"]).FullName; foreach (var p in exceldto) { StringBuilder sb = new StringBuilder(); if (String.IsNullOrEmpty(p.UserCode)) { sb.Append("用户编号不可为空! "); } else { var UserID = UserInfoList.Object.Where(m => m.UserCode == p.UserCode).Select(m => m.UserID).FirstOrDefault(); if (UserID != null) { p.UserID = UserID; p.UpLogic = 2; } else { p.UpLogic = 1; } } if (String.IsNullOrEmpty(p.Email)) { sb.Append("用户邮箱不可为空! "); } if (String.IsNullOrEmpty(p.PhoneNumber)) { sb.Append("用户手机号不可为空! "); } else { //手机号在此不做唯一性判断。 //var PhoneNumber = UserInfoList.Object.Where(m => m.PhoneNumber == p.PhoneNumber).Select(m => m.PhoneNumber).FirstOrDefault(); //if (PhoneNumber != null) //{ // sb.Append("用户手机号不可重复"); //} } if (String.IsNullOrEmpty(p.DistributorNamestr)) { //sb.Append("所属经销商不可为空!"); } else { foreach (var dis in p.DistributorNamelist) { var exist = distributorlist.Object.Where(m => m.DistributorName == dis).FirstOrDefault(); if (exist == null) { sb.Append("经销商名称填写错误!错误名称为" + dis + "请检查!"); } else { } } } if (String.IsNullOrEmpty(p.RoleNamestr)) { //sb.Append("用户角色不可为空! "); } else { foreach (var role in p.RoleNamelist) { var exist = rolelist.Where(m => m.RoleName == role).FirstOrDefault(); if (exist == null) { sb.Append("角色" + role + "不存在!"); } } } if (String.IsNullOrEmpty(p.StopTime)) { sb.Append("使用的截止日期不可为空! "); } p.Importer = strimporter; if (sb.Length > 0) { p.CheckInfo = sb.ToString(); result = false; } } return(result); }