From f28149d8183a62f87fa9c8df9ae589070d83f612 Mon Sep 17 00:00:00 2001 From: 于紫祥_1901 <email@yuzixiang_1910> Date: Thu, 24 Dec 2020 13:47:50 +0800 Subject: [PATCH] 波动补偿 --- src/main/java/com/moral/service/impl/MenuServiceImpl.java | 48 ++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 40 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/moral/service/impl/MenuServiceImpl.java b/src/main/java/com/moral/service/impl/MenuServiceImpl.java index 0c5da0c..ac8f2a4 100644 --- a/src/main/java/com/moral/service/impl/MenuServiceImpl.java +++ b/src/main/java/com/moral/service/impl/MenuServiceImpl.java @@ -1,12 +1,12 @@ package com.moral.service.impl; +import java.util.ArrayList; import java.util.Arrays; import java.util.Date; import java.util.Iterator; import java.util.List; -import javax.annotation.Resource; - +import org.apache.commons.collections.CollectionUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -15,11 +15,12 @@ import com.moral.common.bean.PageBean; import com.moral.common.util.ExampleUtil; import com.moral.entity.Menu; +import com.moral.entity.RoleMenu; import com.moral.mapper.MenuMapper; +import com.moral.mapper.RoleMenuMapper; import com.moral.service.MenuService; import com.moral.util.TkMybatisUtils; -import com.sun.scenario.effect.impl.sw.sse.SSEBlend_SRC_OUTPeer; - +import javax.annotation.Resource; import tk.mybatis.mapper.entity.Example; @Service @@ -30,11 +31,14 @@ @Resource private MenuMapper menuMapper; + @Resource + private RoleMenuMapper roleMenuMapper; + @Override @Transactional public void addOrModify(Menu menu) { try { - if(menu.getMenuParentId()==null){ + if (menu.getMenuParentId() == null) { menu.setMenuParentId(0); } menu.setUpdateTime(new Date()); @@ -113,11 +117,39 @@ Example example = new Example(ENTITY_CLASS); example.or().andIn("id", Arrays.asList(ids)); menuMapper.updateByExampleSelective(menu, example); + Example roleMenuExample = new Example(RoleMenu.class); + roleMenuExample.or().andIn("menuId", Arrays.asList(ids)); + roleMenuMapper.deleteByExample(roleMenuExample); } @Override - public List<Menu> getMenuListByName(String menuName) { - List<Menu> menuList = menuMapper.getMenuListByName(menuName); - return menuList; + public List<Menu> getZNodes() { + List<Menu> menuList = menuMapper.getMenuListInfo(); + List<Menu> zNodes = new ArrayList<>(); + for (Menu menu : menuList) { + if (menu.getMenuOrder().toString().substring(0, 1).equals("1")) { + menu.setMenuParentId(Integer.valueOf(menu.getMenuOrder().toString().substring(0, 1))); + } else { + if (menu.getMenuOrder().toString().length() == 2) { + menu.setMenuParentId(Integer.valueOf(menu.getMenuOrder().toString().substring(0, 1))); + } else if (menu.getMenuOrder().toString().length() == 3) { + menu.setMenuParentId(Integer.valueOf(menu.getMenuOrder().toString().substring(0, 2))); + } + } + zNodes.add(menu); + } + return zNodes; + } + + @Override + public List<Integer> getMenuOrders(Integer roleId) { + List<Integer> menuOrders = menuMapper.getMenuOrdersByRoleId(roleId); + List<Integer> channels = roleMenuMapper.getChannels(roleId); + if (CollectionUtils.isNotEmpty(channels)) { + for (Integer channel : channels) { + menuOrders.add(channel); + } + } + return menuOrders; } } -- Gitblit v1.8.0