david 2 лет назад
Родитель
Сommit
e9a68d9ddc

BIN
out/artifacts/roma_api_jar/roma-api.jar


+ 12 - 3
src/main/java/com/roma/romaapi/controller/ApiController.java

@@ -77,11 +77,11 @@ public class ApiController {
         return CustomResponse.formatResponse(ret);
     }
 
-    // 权限管理-获取全部page权限项
-    @RequestMapping("/api/pagePermissionList")
+    // 权限管理-获取全部权限项
+    @RequestMapping("/api/selectPermissionList")
     public Map pagePermissionList(HttpServletRequest request) {
         Map<String, Object> ret = new HashMap<>();
-        List allPermiss = apiService.pagePermissionList();
+        List allPermiss = apiService.selectPermissionList();
         ret.put("options", allPermiss);
 
         return CustomResponse.formatResponse(ret);
@@ -98,6 +98,15 @@ public class ApiController {
         return CustomResponse.formatResponse(ret);
     }
 
+    // 获取指定权限项数据
+    @RequestMapping("/api/permissionDetailed")
+    public Map permissionDetailed(HttpServletRequest request, @RequestBody String data){
+        Map maps = commonUtil.analysisRequestParams(request, data); // 参数
+        Map detailInfo = apiService.permissionDetailById(maps);
+
+        return CustomResponse.formatResponse(detailInfo);
+    }
+
     // 权限管理-添加权限-获取所有页面,选择关联页面,无分页,且为options格式
     @RequestMapping("/api/pageList")
     public Map pageDetailsList(){

+ 3 - 1
src/main/java/com/roma/romaapi/dao/ApiDao.java

@@ -344,10 +344,12 @@ public class ApiDao {
     public Integer savePermission(Map bindValue, String id) {
         try {
             if (id.length() > 0) {
+                bindValue.put("id", id);
                 String updateSql = " UPDATE `roma_permissions` SET `parent_id`=:parentId,`object_type`=:objectType," +
                         "`object_id`=:objectId,`is_menu`=:isMenu,`permission_sort`=:permissionSort," +
                         "`permissions_icon`=:permissionsIcon,`is_enable`=:isEnable,`created_at`=:createdAt," +
-                        "`menu_name`=:menuName,`is_visible`=:isVisible,`permission_describe`=:permissionDescribe ";
+                        "`menu_name`=:menuName,`is_visible`=:isVisible,`permission_describe`=:permissionDescribe " +
+                        " WHERE id=:id ";
                 Integer updateRet = namedParameterJdbcTemplate.update(updateSql, bindValue);
                 return updateRet;
             } else {

+ 1 - 1
src/main/java/com/roma/romaapi/dao/PageDao.java

@@ -64,7 +64,7 @@ public class PageDao {
         String sql = " SELECT  `pd`.`page_code`,`pd`.`page_name`,`rp`.`is_enable`,`rp`.`id`,`rp`.`parent_id`,`rp`.`permissions_icon`,`rp`.`object_type`," +
                 "`rp`.`object_id`,`rp`.`is_menu`,`rp`.`permission_sort`,`rp`.`menu_name` FROM `roma_permissions` AS `rp` " +
                 " LEFT JOIN `page_details` as `pd` ON `pd`.`id`=`rp`.`object_id` " +
-                "WHERE `object_type`='page' ORDER BY `rp`.`permission_sort` ASC";
+                "WHERE 1=1 ORDER BY `rp`.`permission_sort` ASC";
         List<Map<String, Object>> resMap2 = namedParameterJdbcTemplate.queryForList(sql, paramMap);
 
         return resMap2;

+ 37 - 7
src/main/java/com/roma/romaapi/service/ApiService.java

@@ -141,7 +141,7 @@ public class ApiService {
     }
 
     // 获取Page全部数据-权限添加使用
-    public List pagePermissionList() {
+    public List selectPermissionList() {
         Map<String, Object> map = new HashMap<>();
         List<Map<String, Object>> menuData = pageDao.getPageMenuForList(); // 获取page数据
         List<Map<String, Object>> treeMenu = this.treeMenu(menuData);  // 生成树结构
@@ -415,18 +415,33 @@ public class ApiService {
     // 整理page的添加和编辑权限项目
     private Map handlePagePermission(Map params) {
         // 肯定存在的参数字段
-        String isEnable = params.get("is_enable").toString();
+        String isEnable = "1"; //params.get("is_enable").toString();
         String objectType = params.get("object_type").toString();
         // 以下参数可能不存在
         String isVisible = "0"; // 当是菜单的时候,是否可见
-        String isMenu = "0"; // 是否为菜单
+        String isMenu = "0";
         String menuName = ""; // 菜单名称,page_details表有数据,则此字段可能不存在
         String objectId = "0"; // 关联的基础details表id
         String parentId = "0";// 上级id,顶级菜单,此字段可能不传
         String permissionDescribe = ""; // 描述非必填
         String permissionSort = "0";
         String permissionsIcon = "";
+        // 是否为目录
+        String isDir = "0"; // 1是目录  2不是目录
         String id = ""; // 编辑的id
+        // 如果是目录,则icon给默认的。 如果不是目录,则可以自己输入,如果不输入,则给默认一个。
+        if (params.containsKey("is_dir")) {
+            isDir = params.get("is_dir").toString();
+            if (isDir.equals("1") || isDir.equals("2")) {
+                isMenu = isDir;
+            }
+            if (isDir.equals("1")) {
+                permissionsIcon = "ri-folder-2-line";
+            } else {
+                permissionsIcon = params.get("permissions_icon").toString();
+            }
+        }
+
         if (params.containsKey("id")) {
             id = params.get("id").toString();
         }
@@ -466,9 +481,7 @@ public class ApiService {
         if(params.containsKey("permission_sort")) {
             permissionSort = params.get("permission_sort").toString();
         }
-        if(params.containsKey("permissions_icon")) {
-            permissionsIcon = params.get("permissions_icon").toString();
-        }
+
         String createdAt = commonUtil.getNowYYMMDDHHIISS();
         Map<String, Object> bindVal = new HashMap<>();
         bindVal.put("isEnable", isEnable);
@@ -573,7 +586,24 @@ public class ApiService {
     public Map pageDetailById(Map params) {
         String id = params.get("id").toString();
         Map info = apiDao.getDetailsInfoByIdAndType("page_details", id);
-        System.out.println("id---------"+id+"===============page======="+info);
+
+        return info;
+    }
+
+    // 编辑permission,获取单条数据详情
+    public Map permissionDetailById(Map params) {
+        String id = params.get("id").toString();
+        Map info = apiDao.getDetailsInfoByIdAndType("roma_permissions", id);
+
+        String isVisible = info.get("is_visible").toString();
+        if (isVisible.equals("0")) {
+            info.put("is_visible", "1");
+        }
+        String isDir = info.get("is_menu").toString();
+        if(isDir.equals("0")) {
+            info.put("is_dir", "1");
+        }
+
         return info;
     }