当前位置: 首页 > news >正文

网站开发项目周期的dede网站mip

网站开发项目周期的,dede网站mip,成都网站建设公司哪家好,网站双线选择1、表格设计 RBAC 2、前端路由 根据不同的用户id显示不同的菜单。 根据路由 3、多级菜单 展示所有权限,并且根据当前用户id展示它所属的角色的所有菜单。 前端树状展示 思路: 后端:传给前端map,map里1个是所有菜单&am…

1、表格设计

RBAC 

2、前端路由

根据不同的用户id显示不同的菜单。

根据路由 

3、多级菜单 

展示所有权限,并且根据当前用户id展示它所属的角色的所有菜单。

前端树状展示

思路:

后端:传给前端map,map里1个是所有菜单,1个是它有的菜单。

前端代码:

树形图:

 <div v-if="menuData.length > 0"><el-treeref="tree":data="menuData"show-checkbox:default-checked-keys="getMenuByRoleId"node-key="id"default-expand-all@check-change="handleCheckChange":props="defaultProps"></el-tree>
</div>

 data区域

 data() {return {roleOptions: [], //角色分类selectedRole: 2, // 选中的角色分类menuData: [], //根据角色分类查所有的菜单selectedPermissions: [], // 选中的权限defaultProps: {children: "childrenList",label: "name",},getMenuByRoleId: [],};},

method:

 methods: {//选的所有的权限handleCheckChange() {const checkedKeys = this.$refs.tree.getCheckedKeys();console.log("已勾选的节点:", checkedKeys);},savePermissions() {// 执行保存权限的逻辑,可以将选中的权限发送到后端进行处理console.log(this.selectedPermissions);// 发送请求或者执行其他操作...},handleRoleChange() {// 角色分类变化时,清空选中的权限this.findAllRole();this.selectedPermissions = [];},findAllRole() {console.log(this.selectedRole);this.$axios.get("/api/pc-zdy-sys/role?roleId=" + this.selectedRole).then((res) => {if (res.data.code === 200) {this.menuData = res.data.data.allMenu; //所有菜单数组const roleList = res.data.data.getMenuByRoleId; // 角色拥有的菜单对象数组this.getMenuByRoleId = roleList.map((e) => e.id); //变成菜单id}});},findRoleType() {this.$axios.get("/api/pc-zdy-sys/role/roleType").then((res) => {if (res.data.code == 200) {this.roleOptions = res.data.data;}});},},created() {this.findRoleType();this.findAllRole();},

 4、菜单递归处理

4.1 父菜单找子菜单

 public List<MenuVO> queryMenuByUserId() {String userId = Application.getUserId();//根据用户查角色,查角色拥有的所有菜单List<Menu> menus = menuMapper.queryMenyByUserId(userId);//把子菜单弄给父菜单List<MenuVO> menuVOList = new ArrayList<>();for (Menu menu : menus) {MenuVO menuVO = new MenuVO();BeanUtils.copyProperties(menu,menuVO);menuVOList.add(menuVO);}//针对List<MenuVO>,先过滤一遍,留下有父id 的菜单List<MenuVO> collect = menuVOList.stream().filter(menu -> menu.getParentId() == null)//有父id的菜单 放到对应的id的菜单下.map(menu -> {menu.setChildrenList(getMenus(menuVOList, menu));return menu;}).collect(Collectors.toList());return collect;}

4.2 为子菜单找子菜单

private List<MenuVO> getMenus(List<MenuVO> list, MenuVO menu) {List<MenuVO> menuVOList = new ArrayList<>();for (MenuVO son : list) {// 判断 son 的 parentId 是否等于传入的一级菜单的 idif (son.getParentId() != null && son.getParentId().equals(menu.getId())) {if (son.getChildrenList() == null) {son.setChildrenList(new ArrayList<>());}// 为子菜单找孙菜单son.setChildrenList(getMenus(list, son));menuVOList.add(son);}}return menuVOList;}

http://www.yayakq.cn/news/107688/

相关文章:

  • 网站建设域名的选取有讲究网站常用颜色
  • 本人已履行网站备案信息怎样学好网站开发
  • 免费网站怎么做排名wordpress建英文
  • 京东网站建设策划书建网站赚钱
  • 自己的服务器 做网站经营网站如何挣钱
  • 凯里哪里有做网站的街道网站建设
  • 查询网站流量排名外贸企业 访问国外网站
  • 18.ppt网站是谁做的手机登录百度pc端入口
  • 培训学校如何做网站宣传微信商城网站建设多少钱
  • 那个网站做的刀比较好九斗云网络推广营销数据
  • 手机视频网站开发教程中山网约车资格证报名地点
  • 网站手机网站制作鄂州seo
  • 成都网站开发公司泉塘芒果国际影城
  • 科技网站设计公司杭州专业网站建设
  • 全国网站集约化建设试点秦皇岛网站建设找汉狮
  • 陕西省住房和城乡建设厅官方网站洛阳网站建设找汉狮
  • 做网站的专业最新房产信息
  • 网站宣传与推广wordpress该字体
  • 阿里去可以做几个网站古柏广告设计公司
  • 建设银行可以查房贷的网站网站在线制作平台
  • 怎么注册自己的网站域名网站建设流程图
  • vs 2017c 怎么建设网站做企业平台的网站
  • 企业建网站的步骤网站备案撤销怎么办
  • 网站开发浏览器的使用wordpress怎么修改首页网址导航
  • 农安县住房和城乡建设厅网站网上房地产网官网
  • 做网站用的插件上虞市住房和城乡建设局网站
  • 做美食的视频网站win7做系统网站哪个好
  • 广州seo网站推广技巧网站关键词提高
  • 做服装行业网站怎么每天更新内容互联网推广是做什么的
  • wordpress多站批量发布辽宁省大学生创新创业平台