|
|
@@ -111,11 +111,43 @@ public class ApiService {
|
|
|
}
|
|
|
|
|
|
// 获取全部角色
|
|
|
- public List roleList() {
|
|
|
- Map<String, Object> map = new HashMap<>();
|
|
|
- List<Map<String, Object>> menuData = pageDao.getAllRoleForList(); // 获取全部角色
|
|
|
+ public Map roleList(Map<String, String> maps) {
|
|
|
+ String page = "1"; // 页数
|
|
|
+ String perPage = "15"; // 显示多少条
|
|
|
+ Map res = new HashMap<>();
|
|
|
+ Map bindData = commonUtil.filterApiBindParams(maps);
|
|
|
+ if(maps.containsKey("page")) {
|
|
|
+ page = maps.get("page");
|
|
|
+ }
|
|
|
+ if(maps.containsKey("perPage")) {
|
|
|
+ perPage = maps.get("perPage");
|
|
|
+ }
|
|
|
+ Integer count = apiDao.getAllRoleListHasPagingCount(bindData);
|
|
|
+ List info = apiDao.getAllRoleListHasPaging(bindData, page, perPage, count);
|
|
|
+ res.put("count", count);
|
|
|
+ res.put("rows", info);
|
|
|
|
|
|
- return menuData;
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+
|
|
|
+ // 获取角色详情
|
|
|
+ public Map roleDetailById(Map params) {
|
|
|
+ String id = params.get("id").toString();
|
|
|
+ Map info = apiDao.getDetailsInfoByIdAndType("roma_roles", id);
|
|
|
+ // 获取此角色下的全部详情数据,并用,分割成字符串 permission_info
|
|
|
+ List<Map<String, Object>> roleAllPermission = apiDao.getAllPermissionByRoleId(id);
|
|
|
+ String permissionAllString = "";
|
|
|
+ if (roleAllPermission.size() > 0) {
|
|
|
+ for (int i = 0; i < roleAllPermission.size(); i++) {
|
|
|
+ Map map = roleAllPermission.get(i);
|
|
|
+ String permissionId = map.get("permission_id").toString();
|
|
|
+ permissionAllString += permissionId + ",";
|
|
|
+ }
|
|
|
+ permissionAllString = commonUtil.trimFirstAndLastChar(permissionAllString, ",");
|
|
|
+ }
|
|
|
+ info.put("permission_info", permissionAllString);
|
|
|
+
|
|
|
+ return info;
|
|
|
}
|
|
|
|
|
|
// 获取全部page_details
|
|
|
@@ -195,21 +227,49 @@ public class ApiService {
|
|
|
|
|
|
// 添加角色
|
|
|
public Map addRole(Map maps) {
|
|
|
+ Map retInfo = new HashMap<>(); // 返回信息
|
|
|
+ // 添加和编辑公用此方法
|
|
|
+ String id = "";
|
|
|
+ if (maps.containsKey("id")) {
|
|
|
+ id = maps.get("id").toString();
|
|
|
+ }
|
|
|
// 角色名,是否启用,是必填的
|
|
|
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();
|
|
|
+ } else if (maps.containsKey("role_description")) {
|
|
|
+ roleDesc = maps.get("role_description").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);
|
|
|
+ if (id.length()>0) {
|
|
|
+ // 如果是编辑角色,则增加id参数
|
|
|
+ addRolePamars.put("id", id);
|
|
|
+ } else {
|
|
|
+ // 如果是添加角色,则增加创建时间字段
|
|
|
+ addRolePamars.put("createdAt", createdAt);
|
|
|
+ }
|
|
|
+ Integer roleId = 0;
|
|
|
+ if (id.length() > 0) {
|
|
|
+ // 编辑角色
|
|
|
+ Integer editRoleRet = apiDao.editRole(addRolePamars);
|
|
|
+ if (editRoleRet < 1) {
|
|
|
+ // 如果角色信息编辑失败,则直接返回错误,不进行权限编辑
|
|
|
+ retInfo.put("sysErrorCode", "500");
|
|
|
+
|
|
|
+ return retInfo;
|
|
|
+ }
|
|
|
+ roleId = Integer.valueOf(id);
|
|
|
+ } else {
|
|
|
+ // 添加角色
|
|
|
+ roleId = apiDao.addRole(addRolePamars);
|
|
|
+ }
|
|
|
+
|
|
|
// 判断是否给角色勾选的权限
|
|
|
Boolean hasPermission = maps.containsKey("permission_info");
|
|
|
Integer addRolePermissionRet = 0;
|
|
|
@@ -226,9 +286,15 @@ public class ApiService {
|
|
|
values += " ("+roleId+","+val+"),";
|
|
|
}
|
|
|
values = commonUtil.trimFirstAndLastChar(values, ",");
|
|
|
- addRolePermissionRet = apiDao.addRolePermission(values);
|
|
|
+ if (id.length() > 0) {
|
|
|
+ // 编辑权限
|
|
|
+ addRolePermissionRet = apiDao.editRolePermission(values, id);
|
|
|
+ } else {
|
|
|
+ // 添加权限
|
|
|
+ addRolePermissionRet = apiDao.addRolePermission(values);
|
|
|
+ }
|
|
|
}
|
|
|
- Map retInfo = new HashMap<>();
|
|
|
+
|
|
|
if((hasPermission && addRolePermissionRet>0 && roleId>0) || (!hasPermission && roleId>0)) {
|
|
|
|
|
|
} else {
|