/// <summary> /// 新增角色 /// </summary> /// <param name="pwRoleTypeTable"></param> /// <returns></returns> public ActionResult InserRole(S_UserroleList pwUserroleList) { string str = ""; try { MyModels.S_UserroleList.Add(pwUserroleList); MyModels.SaveChanges(); //保存角色类型表 B_DiseaseDetailList pwDiseaseDetailList = new B_DiseaseDetailList(); //疾病明细表 var list = (from tb in MyModels.S_DiseaseList //疾病表 select tb).ToList(); for (int i = 0; i < list.Count; i++) { pwDiseaseDetailList.UserroleID = pwUserroleList.UserroleID; //角色类型ID pwDiseaseDetailList.DiseaseID = 0; //疾病ID 0为没有该权限 if (pwDiseaseDetailList.UserroleID > 0 && pwDiseaseDetailList.DiseaseID != null) { MyModels.B_DiseaseDetailList.Add(pwDiseaseDetailList); MyModels.SaveChanges();//保存疾病明细表 } } B_RoleAuthorityList pwRoleAutTable = new B_RoleAuthorityList(); //角色权限表 var listAuthorizationTable = (from tb in MyModels.B_AuthorityList //权限表 select tb).ToList(); for (int z = 0; z < listAuthorizationTable.Count; z++) { pwRoleAutTable.UserroleID = pwUserroleList.UserroleID; //角色类型id pwRoleAutTable.authorityID = 0; //权限id if (pwRoleAutTable.UserroleID > 0 && pwRoleAutTable.authorityID != null) { MyModels.B_RoleAuthorityList.Add(pwRoleAutTable); MyModels.SaveChanges();//保存角色权限表 } } S_JournalList pwJournalTable = new S_JournalList(); pwJournalTable.usernameID = Convert.ToInt32(Session["usernameID"]); pwJournalTable.Operate = "添加角色"; pwJournalTable.OperateDate = DateTime.Now; MyModels.S_JournalList.Add(pwJournalTable); MyModels.SaveChanges(); str = "添加成功"; } catch (Exception e) { Console.WriteLine(e); str = "数据异常,请检查"; } return(Json(str, JsonRequestBehavior.AllowGet)); }
/// <summary> /// 保存分配 /// </summary> /// <param name="DataPermiss"></param> /// <param name="FunctionalAuthority"></param> /// <returns></returns> public ActionResult UpdatePermissions(Array DataPermiss, Array FunctionalAuthority) { /////////////////////////////////// 数据权限 ////////////////////////////////////////////// string DataPermissArr = ((string[])DataPermiss)[0]; string[] intDataPermissArr = DataPermissArr.Split(',');//分割 int RoleTypeID = Convert.ToInt32(intDataPermissArr[0]); var list = (from tb in MyModels.B_DiseaseDetailList where tb.UserroleID == RoleTypeID//根据角色类型id查询疾病明细id select new { tb.DiseaseDetailID }).ToList(); for (int i = 0; i < list.Count; i++) { var DiseaseDetailID = list[i].DiseaseDetailID; var Delete = (from tb in MyModels.B_DiseaseDetailList where tb.DiseaseDetailID == DiseaseDetailID select tb).Single(); MyModels.B_DiseaseDetailList.Remove(Delete); MyModels.SaveChanges(); } for (int j = 1; j < intDataPermissArr.Length; j++) { var RoleTypeid = intDataPermissArr[0]; B_DiseaseDetailList dis = new B_DiseaseDetailList(); dis.UserroleID = Convert.ToInt32(RoleTypeid); dis.DiseaseID = Convert.ToInt32(intDataPermissArr[j]); if (dis.UserroleID > 0 && dis.DiseaseID != null) { MyModels.B_DiseaseDetailList.Add(dis); MyModels.SaveChanges(); } } /////////////////////////////////// 功能权限 ////////////////////////////////////////////// string FunctionalAuthorityArr = ((string[])FunctionalAuthority)[0]; string[] intFunctionalAuthorityArr = FunctionalAuthorityArr.Split(',');//分割 int roletypeid = Convert.ToInt32(intFunctionalAuthorityArr[0]); var listFunctionalAuthority = (from tb in MyModels.B_RoleAuthorityList where tb.UserroleID == roletypeid//根据角色类型id查询角色权限id select new { tb.RoleAuthorityID }).ToList(); for (int z = 0; z < listFunctionalAuthority.Count; z++) { var RoleAutID = listFunctionalAuthority[z].RoleAuthorityID; var Delete = (from tb in MyModels.B_RoleAuthorityList where tb.RoleAuthorityID == RoleAutID select tb).Single(); MyModels.B_RoleAuthorityList.Remove(Delete); MyModels.SaveChanges(); } for (int y = 1; y < intFunctionalAuthorityArr.Length; y++) { var RoleTypeid = intFunctionalAuthorityArr[0]; B_RoleAuthorityList role = new B_RoleAuthorityList(); role.UserroleID = Convert.ToInt32(RoleTypeid); role.authorityID = Convert.ToInt32(intFunctionalAuthorityArr[y]); if (role.UserroleID > 0 && role.authorityID != null) { MyModels.B_RoleAuthorityList.Add(role); MyModels.SaveChanges(); } } return(Json("success", JsonRequestBehavior.AllowGet)); }