david 2 years ago
parent
commit
e3fddda612

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


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

@@ -161,8 +161,8 @@ public class ApiController {
     @RequestMapping("/api/apiList")
     public Map apiDetailsList(){
         Map<String, Object> ret = new HashMap<>();
-        List pageList = apiService.apiList();
-        ret.put("options", pageList);
+        List apiList = apiService.apiList();
+        ret.put("options", apiList);
 
         return CustomResponse.formatResponse(ret);
     }
@@ -275,6 +275,16 @@ public class ApiController {
         return CustomResponse.formatResponse(ret);
     }
 
+    // 用户分配角色,无分页,且为options格式
+    @RequestMapping("/api/optionRoleList")
+    public Map optionRoleList(){
+        Map<String, Object> ret = new HashMap<>();
+        List pageList = apiService.roleList();
+        ret.put("options", pageList);
+
+        return CustomResponse.formatResponse(ret);
+    }
+
     // 上传头像
     @RequestMapping("api/uploadSave")
     public Map uploadSave(@RequestParam("file") MultipartFile file) {
@@ -287,5 +297,14 @@ public class ApiController {
         return CustomResponse.formatResponse(ret);
     }
 
-    // 用户分配角色
+    // 用户管理-新增用户
+    @RequestMapping("/api/userSave")
+    public Map userSave(HttpServletRequest request, @RequestBody String data,
+                        @RequestHeader("Authorization") String authorization) {
+        Map maps = commonUtil.analysisRequestParams(request, data); // 参数
+
+        Map ret = apiService.userSave(maps, authorization);
+
+        return CustomResponse.formatResponse(ret);
+    }
 }

+ 27 - 0
src/main/java/com/roma/romaapi/dao/ApiDao.java

@@ -12,6 +12,7 @@ import org.springframework.jdbc.support.KeyHolder;
 import org.springframework.stereotype.Repository;
 
 import java.util.HashMap;
+import java.util.LinkedHashSet;
 import java.util.List;
 import java.util.Map;
 
@@ -245,4 +246,30 @@ public class ApiDao {
 
         return resMap2;
     }
+
+    // 添加用户
+    public Integer saveUser(Map bindValue, String userRole) {
+//        addPagePamars.put("userRole", userRole);
+        String sql = " INSERT INTO `admin_user` (`admin_name`,`admin_password`,`created_at`,`admin_avatar`," +
+                "`is_enable`,`admin_email`,`admin_phone`)" +
+                " VALUES (:adminName,:adminPassword,:createdAt,:apiUploadPic,:isEnable,:adminEmail,:adminPhone)  ";
+        KeyHolder keyHolder = new GeneratedKeyHolder();
+        Integer row = namedParameterJdbcTemplate.update(sql, new MapSqlParameterSource(bindValue), keyHolder);
+        int k = keyHolder.getKey().intValue();
+
+        // 添加用户之后,增加用户和角色的关联
+//// 如果有权限,则添加完角色后,再添加角色和权限的关联表数据
+//        LinkedHashSet<String> unPermission = new LinkedHashSet<String>();
+//        for(String s : allPermission.split(",")) {
+//            unPermission.add(s);
+//        }
+//        // 循环去重后的数据
+//        String values = "";
+//        for(String val: unPermission) {
+//            values += " ("+roleId+","+val+"),";
+//        }
+//        values = commonUtil.trimFirstAndLastChar(values, ",");
+
+        return k;
+    }
 }

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

@@ -184,6 +184,15 @@ public class PageDao {
         return resMap2;
     }
 
+    // 获取全部的role,用户分配角色使用
+    public List<Map<String, Object>> getAllRoleList() {
+        Map<String, Object> paramMap = new HashMap<>();
+        String sql = " SELECT  *  FROM `roma_roles` WHERE `is_enable`=1 ORDER BY `id` DESC ";
+        List<Map<String, Object>> resMap2 = namedParameterJdbcTemplate.queryForList(sql, paramMap);
+
+        return resMap2;
+    }
+
     // 用户管理-获取总数
     public Integer getAllUserListHasPagingCount(Map bindValue) {
         // 获取总数

+ 51 - 1
src/main/java/com/roma/romaapi/service/ApiService.java

@@ -252,7 +252,14 @@ public class ApiService {
     public List apiList() {
         Map<String, Object> map = new HashMap<>();
         List<Map<String, Object>> menuData = pageDao.getAllApiList(); // 获取全部page_details表数据
-//        List<Map<String, Object>> treeMenu = this.treeMenu(menuData);  // 生成树结构
+
+        return menuData;
+    }
+
+    // 获取全部roma_roles---用户分配角色使用,无分页
+    public List roleList() {
+        Map<String, Object> map = new HashMap<>();
+        List<Map<String, Object>> menuData = pageDao.getAllRoleList();
 
         return menuData;
     }
@@ -558,6 +565,49 @@ public class ApiService {
         return res;
     }
 
+    // 添加用户信息
+    public Map userSave(Map maps, String authorization) {
+        String isEnable = maps.get("is_enable").toString();
+        String adminName = maps.get("admin_name").toString();
+        String adminPassword = maps.get("admin_password").toString();
+        // 密码要加密
+        // 角色/email/phone/头像 可能不存在
+        String adminEmail = "";
+        String adminPhone = "";
+        String userRole = "";
+        String apiUploadPic = "";
+        if (maps.containsKey("admin_email")) {
+            adminEmail = maps.get("admin_email").toString();
+        }
+        if (maps.containsKey("admin_phone")) {
+            adminPhone = maps.get("admin_phone").toString();
+        }
+        if (maps.containsKey("api_upload_pic")) {
+            apiUploadPic = maps.get("api_upload_pic").toString();
+        }
+        if (maps.containsKey("user_role")) {
+            userRole = maps.get("user_role").toString();
+        }
+        String createdAt = commonUtil.getNowYYMMDDHHIISS();
+        Map<String, Object> addPagePamars = new HashMap<>();
+        adminPassword = securityUtils.encodePassword(adminPassword); // 加密密码
+        addPagePamars.put("isEnable", isEnable);
+        addPagePamars.put("adminName", adminName);
+        addPagePamars.put("adminPassword", adminPassword);
+        addPagePamars.put("adminEmail", adminEmail);
+        addPagePamars.put("adminPhone", adminPhone);
+        addPagePamars.put("apiUploadPic", apiUploadPic);
+        addPagePamars.put("userRole", userRole);
+        addPagePamars.put("createdAt", createdAt);
+        // 添加
+        Integer pageId = apiDao.saveUser(addPagePamars, userRole);
+        Map retInfo = new HashMap<>();
+        if(pageId <= 0){
+            retInfo.put("sysErrorCode", "500");
+        }
+        return retInfo;
+    }
+
     // 转换tree结构数据
     private List<Map<String, Object>> treeMenu(List<Map<String, Object>> renderMenu){
         // 处理的数据存在