|
|
@@ -9,6 +9,7 @@ import org.springframework.data.redis.core.RedisTemplate;
|
|
|
import com.roma.romaapi.utils.SecurityUtils;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
import java.util.*;
|
|
|
import java.util.concurrent.TimeUnit;
|
|
|
|
|
|
@@ -109,6 +110,14 @@ public class ApiService {
|
|
|
return treeMenu;
|
|
|
}
|
|
|
|
|
|
+ // 获取全部角色
|
|
|
+ public List roleList() {
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
+ List<Map<String, Object>> menuData = pageDao.getAllRoleForList(); // 获取全部角色
|
|
|
+
|
|
|
+ return menuData;
|
|
|
+ }
|
|
|
+
|
|
|
// 获取全部page_details
|
|
|
public List pageList() {
|
|
|
Map<String, Object> map = new HashMap<>();
|
|
|
@@ -149,7 +158,63 @@ public class ApiService {
|
|
|
|
|
|
// 新建权限
|
|
|
public void addPermissions(Map maps) {
|
|
|
- System.out.println("权限数据----------------"+maps);
|
|
|
+ String objectType = maps.get("object_type").toString();
|
|
|
+ String menuName = "";
|
|
|
+ if (maps.containsKey("object_type")) {
|
|
|
+ menuName = maps.get("menu_name").toString();
|
|
|
+ }
|
|
|
+ // 通过是否有菜单名称,判断是否是菜单.
|
|
|
+ if (objectType.equals("page")) {
|
|
|
+ // 如果没有父级id,则应该有菜单名称.因为没有页面,是菜单目录,要展示菜单名称
|
|
|
+ // 如果不是菜单,则应该选择页面,启用. 父级权限可选或不选
|
|
|
+ // 如果是菜单,则可以不选择页面,也可以选择页面. 可以选择父级菜单,即自己是子菜单. 或者不选择父级菜单,自己是顶级菜单.可以输入icon
|
|
|
+ }
|
|
|
+ System.out.println("权限数据----------------"+objectType);
|
|
|
+ System.out.println("权限数据----------------"+menuName);
|
|
|
+ }
|
|
|
+
|
|
|
+ // 添加角色
|
|
|
+ public Map addRole(Map maps) {
|
|
|
+ // 角色名,是否启用,是必填的
|
|
|
+ String isEnable = maps.get("is_enable").toString();
|
|
|
+ String roleName = maps.get("role_name").toString();
|
|
|
+ String roleDesc = "";
|
|
|
+ if (maps.containsKey("role_desc")) {
|
|
|
+ roleDesc = maps.get("role_desc").toString();
|
|
|
+ }
|
|
|
+ String createdAt = commonUtil.getNowYYMMDDHHIISS();
|
|
|
+ Map<String, Object> addRolePamars = new HashMap<>();
|
|
|
+ addRolePamars.put("roleName", roleName);
|
|
|
+ addRolePamars.put("isEnable", isEnable);
|
|
|
+ addRolePamars.put("roleDesc", roleDesc);
|
|
|
+ addRolePamars.put("createdAt", createdAt);
|
|
|
+ // 添加角色
|
|
|
+ Integer roleId = apiDao.addRole(addRolePamars);
|
|
|
+ // 判断是否给角色勾选的权限
|
|
|
+ Boolean hasPermission = maps.containsKey("permission_info");
|
|
|
+ Integer addRolePermissionRet = 0;
|
|
|
+ if(hasPermission) {
|
|
|
+ String allPermission = maps.get("permission_info").toString();
|
|
|
+ // 如果有权限,则添加完角色后,再添加角色和权限的关联表数据
|
|
|
+ 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, ",");
|
|
|
+ addRolePermissionRet = apiDao.addRolePermission(values);
|
|
|
+ }
|
|
|
+ Map retInfo = new HashMap<>();
|
|
|
+ if((hasPermission && addRolePermissionRet>0 && roleId>0) || (!hasPermission && roleId>0)) {
|
|
|
+
|
|
|
+ } else {
|
|
|
+ retInfo.put("sysErrorCode", "500");
|
|
|
+ }
|
|
|
+ return retInfo;
|
|
|
}
|
|
|
|
|
|
// public List pageList() {
|