public JsonResult AddRole(RoleModel model) { JsonModel jm = new JsonModel(); //如果表单模型验证成功 if (ModelState.IsValid) { ICompanyRoleBLL propertyRoleBll = BLLFactory <ICompanyRoleBLL> .GetBLL("CompanyRoleBLL"); //初始化平台角色数据实体 T_CompanyRole role = new T_CompanyRole() { RoleName = model.RoleName, RoleMemo = model.RoleMemo, CompanyId = GetSessionModel().CompanyId.Value }; //保存 propertyRoleBll.Save(role); //日志记录 jm.Content = PropertyUtils.ModelToJsonString(model); } else { jm.Msg = ConstantParam.JSON_RESULT_MODEL_CHECK_ERROR; } return(Json(jm, JsonRequestBehavior.AllowGet)); }
public JsonResult DeleteRole(int id) { JsonModel jm = new JsonModel(); ICompanyRoleBLL companyRoleBll = BLLFactory <ICompanyRoleBLL> .GetBLL("CompanyRoleBLL"); //获取要删除的总公司角色 T_CompanyRole role = companyRoleBll.GetEntity(m => m.Id == id); if (role == null) { jm.Msg = "该角色不存在"; } else if (role.CompanyUserRoles.Count > 0) { jm.Msg = "有配置该角色的用户,不能删除"; } else { if (companyRoleBll.Delete(role)) { //操作日志 jm.Content = "删除总公司角色 " + role.RoleName; } else { jm.Msg = "删除失败"; } } return(Json(jm, JsonRequestBehavior.AllowGet)); }
public ActionResult ConfigAuth(int id) { RoleAuthModel model = new RoleAuthModel(); ICompanyRoleBLL companyRoleBll = BLLFactory <ICompanyRoleBLL> .GetBLL("CompanyRoleBLL"); //获取要分配角色的物业角色 T_CompanyRole role = companyRoleBll.GetEntity(m => m.Id == id); IMenuBLL menuBll = BLLFactory <IMenuBLL> .GetBLL("MenuBLL"); //获取所有的菜单 var menuList = menuBll.GetList(m => m.MenuFlag == ConstantParam.MENU_LEFT && m.IsPlatform == ConstantParam.USER_TYPE_COMPANY && m.ParentId == null).OrderBy(m => m.Order).ToList(); //Model赋值菜单列表 model.MenuList = menuList; //Model赋值要分配角色的总公司角色 model.Role = new RoleModel() { RoleId = role.Id, RoleName = role.RoleName, RoleMemo = role.RoleMemo }; //获取该角色已经有的权限ID集合 model.ActionIds = role.CompanyRoleActions.Select(m => m.ActionId).ToList(); return(View(model)); }
public ActionResult ScanRole(int id) { // 创建物业总公司用户角色模型 CompanyUserRoleModel companyUserRoleModel = new CompanyUserRoleModel(); ICompanyUserBLL companyUserBll = BLLFactory <ICompanyUserBLL> .GetBLL("CompanyUserBLL"); // 根据指定id值获取实体对象 var companyUserInfo = companyUserBll.GetEntity(index => index.Id == id && index.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); companyUserRoleModel.User = new CompanyUserModel() { UserName = companyUserInfo.UserName, CompanyUserId = companyUserInfo.Id, TrueName = companyUserInfo.TrueName }; // 获取物业总公司用户已分配的角色id列表 var selectedRoleList = companyUserInfo.CompanyUserRoles.Select(m => m.RoleId).ToList(); companyUserRoleModel.RoleIds = selectedRoleList; // 获取所有物业总公司角色 ICompanyRoleBLL companyRoleBll = BLLFactory <ICompanyRoleBLL> .GetBLL("CompanyRoleBLL"); //排序 var sortModel = this.SettingSorting("Id", false); var roleList = companyRoleBll.GetList(p => true, sortModel.SortName, sortModel.IsAsc).ToList(); companyUserRoleModel.RoleList = roleList; return(View(companyUserRoleModel)); }
public ActionResult ViewAuth(int id) { RoleAuthModel model = new RoleAuthModel(); ICompanyRoleBLL companyRoleBll = BLLFactory <ICompanyRoleBLL> .GetBLL("CompanyRoleBLL"); //获取要查看权限的总公司角色 T_CompanyRole role = companyRoleBll.GetEntity(m => m.Id == id); //赋值 要查看权限的总公司角色 model.Role = new RoleModel() { RoleId = role.Id, RoleName = role.RoleName, RoleMemo = role.RoleMemo }; //如果是普通角色 if (role.IsSystem == ConstantParam.USER_ROLE_DEFAULT) { //赋值 该角色所有的权限ID集合 model.ActionIds = role.CompanyRoleActions.Select(m => m.ActionId).ToList(); //Model赋值 该角色所关联的非重复菜单 var roleMenuList = role.CompanyRoleActions.Select(m => m.Action.Menu).Distinct().OrderBy(m => m.Order).ToList(); //新定义展示Model树形菜单 var menuList = new List <M_Menu>(); foreach (var menu in roleMenuList) { if (menu.ParentId != null) { if (!menuList.Contains(menu.ParentMenu)) { menuList.Add(menu.ParentMenu); } } menuList.Add(menu); } model.MenuList = menuList; } else { IActionBLL actionBll = BLLFactory <IActionBLL> .GetBLL("ActionBLL"); //赋值 所有的总公司权限 model.ActionIds = actionBll.GetList(a => a.Menu.IsPlatform == ConstantParam.USER_TYPE_COMPANY).Select(a => a.Id).ToList(); IMenuBLL menuBll = BLLFactory <IMenuBLL> .GetBLL("MenuBLL"); //Model赋值 所有的平台菜单 model.MenuList = menuBll.GetList(m => m.IsPlatform == ConstantParam.USER_TYPE_COMPANY).ToList(); } return(View(model)); }
public ContentResult RemoteCheckExist(int roleId, string roleName) { ICompanyRoleBLL companyRoleBll = BLLFactory <ICompanyRoleBLL> .GetBLL("CompanyRoleBLL"); //获取当前用户所属总公司ID int currentCompanyId = GetSessionModel().CompanyId.Value; //如果角色存在,验证不通过 if (companyRoleBll.Exist(m => m.RoleName == roleName && m.CompanyId == currentCompanyId && m.Id != roleId)) { return(Content("false")); } else//角色不存在,验证通过 { return(Content("true")); } }
public ActionResult RoleList(RoleSearchModel model) { ICompanyRoleBLL companyRoleBll = BLLFactory <ICompanyRoleBLL> .GetBLL("CompanyRoleBLL"); //查询条件 Expression <Func <T_CompanyRole, bool> > where = u => string.IsNullOrEmpty(model.RoleName) ? true : u.RoleName.Contains(model.RoleName); //获取当前用户所属总公司ID int currentCompanyId = GetSessionModel().CompanyId.Value; //查询条件:当前用户所在总公司 where = where.And(u => u.CompanyId == currentCompanyId); //排序 var sortModel = this.SettingSorting("Id", false); var list = companyRoleBll.GetPageList(where, sortModel.SortName, sortModel.IsAsc, model.PageIndex); return(View(list)); }
public JsonResult ConfigAuth(RoleConfigAuthModel model) { JsonModel jm = new JsonModel(); try { ICompanyRoleBLL companyRoleBll = BLLFactory <ICompanyRoleBLL> .GetBLL("CompanyRoleBLL"); //获取要分配角色的总公司角色 T_CompanyRole role = companyRoleBll.GetEntity(m => m.Id == model.RoleId); List <R_CompanyRoleAction> actions = new List <R_CompanyRoleAction>(); //如果设置了首页权限 230:为总公司平台首页权限ID if (model.ids != null && model.ids.Length > 0 && model.ids.Contains(230)) { //没有设置任何权限 则不执行循环操作 foreach (var id in model.ids) { R_CompanyRoleAction item = new R_CompanyRoleAction() { ActionId = id, RoleId = model.RoleId }; actions.Add(item); } //修改角色对应的权限组 if (companyRoleBll.ConfigAuth(role, actions)) { jm.Content = "总公司角色" + role.RoleName + "分配权限"; } else { jm.Msg = "分配权限失败"; } } else { jm.Msg = "必须分配总公司平台首页权限"; } } catch { jm.Msg = "分配权限失败"; } return(Json(jm, JsonRequestBehavior.AllowGet)); }
public JsonResult SetCompanyAdministrator(CompanyUserModel model) { JsonModel jm = new JsonModel(); //如果表单模型验证成功 if (ModelState.IsValid) { ICompanyUserBLL propertyUserBll = BLLFactory <ICompanyUserBLL> .GetBLL("CompanyUserBLL"); T_CompanyUser companyUser = new T_CompanyUser() { CompanyId = model.CompanyId, UserName = model.UserName, Email = model.Email, Password = PropertyUtils.GetMD5Str(model.Password), IsMgr = ConstantParam.USER_ROLE_MGR, DelFlag = ConstantParam.DEL_FLAG_DEFAULT, }; //为管理员添加角色 ICompanyRoleBLL roleBll = BLLFactory <ICompanyRoleBLL> .GetBLL("CompanyRoleBLL"); var role = roleBll.GetEntity(r => r.IsSystem == ConstantParam.USER_ROLE_MGR && r.CompanyId == model.CompanyId); if (role != null) { companyUser.CompanyUserRoles.Add(new R_CompanyUserRole() { RoleId = role.Id, }); } //创建管理员 propertyUserBll.Save(companyUser); //日志记录 jm.Content = PropertyUtils.ModelToJsonString(model); } else { jm.Msg = ConstantParam.JSON_RESULT_MODEL_CHECK_ERROR; } return(Json(jm, JsonRequestBehavior.AllowGet)); }
public JsonResult EditRole(RoleModel model) { JsonModel jm = new JsonModel(); //如果表单模型验证成功 if (ModelState.IsValid) { ICompanyRoleBLL companyRoleBll = BLLFactory <ICompanyRoleBLL> .GetBLL("CompanyRoleBLL"); T_CompanyRole role = companyRoleBll.GetEntity(m => m.Id == model.RoleId); if (role != null) { role.RoleName = model.RoleName; role.RoleMemo = model.RoleMemo; //编辑 if (companyRoleBll.Update(role)) { //日志记录 jm.Content = PropertyUtils.ModelToJsonString(model); } else { jm.Msg = "编辑失败"; } } else { jm.Msg = "该角色不存在"; } } else { jm.Msg = ConstantParam.JSON_RESULT_MODEL_CHECK_ERROR; } return(Json(jm, JsonRequestBehavior.AllowGet)); }
/// <summary> /// 添加公司,指定系统角色 /// </summary> /// <param name="company">公司实体对象</param> /// <returns></returns> public bool AddCompany(T_Company company) { //使用事务进行数据库操作 using (var tran = this.nContext.Database.BeginTransaction()) { try { //添加公司 var newCompany = base.Save(company); if (newCompany != null) { //给公司设定系统角色 ICompanyRoleBLL companyRoleBll = BLLFactory <ICompanyRoleBLL> .GetBLL("CompanyRoleBLL"); //初始化物业系统角色数据实体 T_CompanyRole role = new T_CompanyRole() { RoleName = ConstantParam.COMPANY_SYSTEM_ROLE_NAME, RoleMemo = ConstantParam.COMPANY_SYSTEM_ROLE_MEMO, CompanyId = newCompany.Id, IsSystem = ConstantParam.USER_ROLE_MGR }; //保存 companyRoleBll.Save(role); //提交事务 tran.Commit(); } } catch { tran.Rollback(); return(false); } } return(true); }
public ActionResult EditRole(int id) { ICompanyRoleBLL companyRoleBll = BLLFactory <ICompanyRoleBLL> .GetBLL("CompanyRoleBLL"); //获取要编辑的总公司角色 T_CompanyRole role = companyRoleBll.GetEntity(m => m.Id == id); if (role != null) { //初始化返回页面的模型 RoleModel model = new RoleModel() { RoleId = role.Id, RoleName = role.RoleName, RoleMemo = role.RoleMemo }; return(View(model)); } else { return(RedirectToAction("RoleList")); } }
public ActionResult ConfigRole(int id) { // 创建物业总公司用户角色模型 CompanyUserRoleModel companyUserRoleModel = new CompanyUserRoleModel(); // 获取指定id的物业总公司用户模型 ICompanyUserBLL companyUserBll = BLLFactory <ICompanyUserBLL> .GetBLL("CompanyUserBLL"); T_CompanyUser companyUser = companyUserBll.GetEntity(m => m.Id == id && m.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); companyUserRoleModel.User = new CompanyUserModel() { CompanyUserId = companyUser.Id, UserName = companyUser.UserName, TrueName = companyUser.TrueName, Tel = companyUser.Tel, Phone = companyUser.Phone, Memo = companyUser.Memo, Email = companyUser.Email }; // 获取本总公司中所有的角色 ICompanyRoleBLL companyRoleBll = BLLFactory <ICompanyRoleBLL> .GetBLL("CompanyRoleBLL"); //排序 var sortModel = this.SettingSorting("Id", false); var roleList = companyRoleBll.GetList(p => p.CompanyId == companyUser.CompanyId && p.IsSystem == ConstantParam.USER_ROLE_DEFAULT, sortModel.SortName, sortModel.IsAsc).ToList(); companyUserRoleModel.RoleList = roleList; //获取该总公司用户已分配的角色id的集合 companyUserRoleModel.RoleIds = companyUser.CompanyUserRoles.Select(m => m.RoleId).ToList(); return(View(companyUserRoleModel)); }