Administrator 4 years ago
parent
commit
1433d78a5b

+ 20 - 3
boman-api/boman-api-system/src/main/java/com/boman/system/api/RemoteSysMenuService.java

@@ -5,9 +5,7 @@ import com.boman.common.core.web.domain.AjaxResult;
 import com.boman.system.api.domain.SysMenu;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.*;
 
 /**
  * @author tjf
@@ -18,10 +16,29 @@ public interface RemoteSysMenuService {
 
     /**
      * 新增菜单
+     *
      * @param menu 菜单
      * @return
      */
     @PostMapping("/menu")
     public AjaxResult add(@Validated @RequestBody SysMenu menu);
 
+    /**
+     * 查询菜单信息
+     *
+     * @param menu
+     * @return
+     */
+    @GetMapping("/menu/list")
+    public AjaxResult list(@Validated @RequestBody SysMenu menu);
+
+    /**
+     * 删除菜单
+     * @param id
+     * @return
+     */
+    @DeleteMapping("/menu/{id}")
+    public AjaxResult remove(@PathVariable("id") Long id);
+
+
 }

+ 20 - 11
boman-modules/boman-gen/src/main/java/com/boman/gen/service/GenTableServiceImpl.java

@@ -4,9 +4,8 @@ import java.io.ByteArrayOutputStream;
 import java.io.File;
 import java.io.IOException;
 import java.io.StringWriter;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
+import java.lang.reflect.Array;
+import java.util.*;
 import java.util.stream.Collectors;
 import java.util.zip.ZipEntry;
 import java.util.zip.ZipOutputStream;
@@ -445,6 +444,8 @@ public class GenTableServiceImpl implements IGenTableService {
      */
     @Override
     public AjaxResult insertGenTable(GenTable genTable) {
+        String menuRole = genTable.getMenuRole();
+        genTable.setMenuRole(menuRole.toUpperCase());
         //新增表成功的时候,新增字段公共字段
         int i = genTableMapper.insertGenTable(genTable);
         if (i > 0) {
@@ -553,6 +554,9 @@ public class GenTableServiceImpl implements IGenTableService {
             //先查询之前是否是菜单
             GenTable genTableOld = genTableMapper.selectGenTableById(genTable.getId());
             if (UserConstants.ISMENU.equals(genTableOld.getIsMenu())) {
+                //在判断是否新增/减少了菜单权限
+                String menuRoleOld = genTableOld.getMenuRole();
+                String menuRole = genTable.getMenuRole();
                 return;
             }
         }
@@ -582,18 +586,23 @@ public class GenTableServiceImpl implements IGenTableService {
             //获取菜单id
             String menuRole = genTable.getMenuRole();
             String[] strings = Convert.toStrArray("",menuRole);
+            Set set = new HashSet(Arrays.asList(strings));
+            strings = (String[]) set.toArray(new String[0]);
             if (strings.length > 0) {
                 for (int i = 0; i < strings.length; i++) {
                     SysMenu menu = new SysMenu();
                     menu.setParentId(parentId);
-                    menu.setMenuName(RoleEnum.getValue(strings[i]));
-                    menu.setOrderNum(String.valueOf(i + 1));
-                    menu.setMenuType("F");
-                    menu.setIcon("#");
-                    //路由
-                    menu.setPath("#");
-                    sysMenu.setCreateBy(SecurityUtils.getUsername());
-                    remoteSysMenuService.add(menu);
+                    String value = RoleEnum.getValue(strings[i]);
+                    if (StringUtils.isNotBlank(value)){
+                        menu.setMenuName(value);
+                        menu.setOrderNum(String.valueOf(i + 1));
+                        menu.setMenuType("F");
+                        menu.setIcon("#");
+                        //路由
+                        menu.setPath("#");
+                        sysMenu.setCreateBy(SecurityUtils.getUsername());
+                        remoteSysMenuService.add(menu);
+                    }
                 }
             }
         }