权限开发2

This commit is contained in:
ys.git 2025-12-08 10:21:32 +08:00
parent 9b1144d0cb
commit d7bae4091b
5 changed files with 67 additions and 8 deletions

View File

@ -3,6 +3,7 @@ package com.xdap.self_development.controller;
import com.definesys.mpaas.common.http.Response; import com.definesys.mpaas.common.http.Response;
import com.xdap.self_development.controller.request.ModelRolesRequest; import com.xdap.self_development.controller.request.ModelRolesRequest;
import com.xdap.self_development.controller.request.RolePerJoinRequest;
import com.xdap.self_development.pojo.ModelRolesPojo; import com.xdap.self_development.pojo.ModelRolesPojo;
import com.xdap.self_development.pojo.dto.PageResultDTO; import com.xdap.self_development.pojo.dto.PageResultDTO;
import com.xdap.self_development.pojo.view.MenuListView; import com.xdap.self_development.pojo.view.MenuListView;
@ -46,9 +47,18 @@ public class PermissionController {
} }
} }
//为角色添加权限 //为角色添加权限
@PostMapping("/insertPerForRole")
public Response insertPerForRole(@RequestBody List<RolePerJoinRequest> request){
try {
modelRoleService.insertPerForRole(request);
return Response.ok();
} catch (Exception e) {
throw new RuntimeException(e.getMessage());
}
}
//修改角色信息 //修改角色信息
//菜单查询 //菜单查询
@GetMapping("/selectMenus") @GetMapping("/selectMenus")
Response selectMenus(){ Response selectMenus(){
@ -60,7 +70,7 @@ public class PermissionController {
} }
} }
//参数查询 //根据角色查询权限
} }

View File

@ -0,0 +1,12 @@
package com.xdap.self_development.controller.request;
import lombok.Data;
@Data
public class RolePerJoinRequest {
//角色ID 菜单ID 参数ID
private String roleId;
private String menuId;
private String parameterId;
private Integer parameterPer;
}

View File

@ -11,7 +11,7 @@ import java.util.Date;
@Data @Data
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
@Table("yfsjglpt_model_menu_dictionary") @Table("yfsjglpt_model_menu_dictionary")
public class ModelMenuPermissionPojo { public class ModelMenuDictionaryPojo {
@RowID(sequence = "yfsjglpt_model_menu_dictionary_s", type = RowIDType.UUID) @RowID(sequence = "yfsjglpt_model_menu_dictionary_s", type = RowIDType.UUID)
private String id ; private String id ;
@ -34,7 +34,7 @@ public class ModelMenuPermissionPojo {
/** 最后更新时间,; */ /** 最后更新时间,; */
private Date lastUpdateDate ; private Date lastUpdateDate ;
public ModelMenuPermissionPojo(String id, String parentId, String menuName) { public ModelMenuDictionaryPojo(String id, String parentId, String menuName) {
this.id = id; this.id = id;
this.parentId = parentId; this.parentId = parentId;
this.menuName = menuName; this.menuName = menuName;

View File

@ -2,10 +2,9 @@ package com.xdap.self_development.service;
import com.xdap.self_development.controller.request.ModelRolesRequest; import com.xdap.self_development.controller.request.ModelRolesRequest;
import com.xdap.self_development.pojo.ModelMenuPermissionPojo; import com.xdap.self_development.controller.request.RolePerJoinRequest;
import com.xdap.self_development.pojo.ModelRolesPojo; import com.xdap.self_development.pojo.ModelRolesPojo;
import com.xdap.self_development.pojo.dto.PageResultDTO; import com.xdap.self_development.pojo.dto.PageResultDTO;
import com.xdap.self_development.pojo.view.MenuListView;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@ -18,5 +17,5 @@ public interface ModelRoleService {
List<ModelRolesPojo> selectRoles(String userID); List<ModelRolesPojo> selectRoles(String userID);
void insertPerForRole(List<RolePerJoinRequest> request);
} }

View File

@ -3,7 +3,9 @@ package com.xdap.self_development.service.impl;
import com.xdap.self_development.config.BusinessDatabase; import com.xdap.self_development.config.BusinessDatabase;
import com.xdap.self_development.controller.request.ModelRolesRequest; import com.xdap.self_development.controller.request.ModelRolesRequest;
import com.xdap.self_development.pojo.ModelMenuPermissionPojo; import com.xdap.self_development.controller.request.RolePerJoinRequest;
import com.xdap.self_development.pojo.ModelMenuParameterPojo;
import com.xdap.self_development.pojo.ModelRolePermissionPojo;
import com.xdap.self_development.pojo.ModelRolesPojo; import com.xdap.self_development.pojo.ModelRolesPojo;
import com.xdap.self_development.pojo.Parameter; import com.xdap.self_development.pojo.Parameter;
import com.xdap.self_development.pojo.dto.PageResultDTO; import com.xdap.self_development.pojo.dto.PageResultDTO;
@ -48,4 +50,40 @@ public class ModelRoleServiceImpl implements ModelRoleService {
return modelRolesPojos; return modelRolesPojos;
} }
@Override
public void insertPerForRole(List<RolePerJoinRequest> requests) {
for (RolePerJoinRequest request : requests) {
String roleId = request.getRoleId();
String menuId = request.getMenuId();
String parameterId = request.getParameterId();
Integer parameterPer = request.getParameterPer();
if (ObjectUtils.isEmpty(parameterId)||ObjectUtils.isEmpty(roleId)||ObjectUtils.isEmpty(menuId)) {
log.warn("参数不完整无法写入");
continue;
}
//查找参数 组装权限
Parameter parameter = businessDatabase.getBusinessDatabase()
.eq("id", parameterId)
.doQuery(Parameter.class).get(0);
String uuid = String.valueOf(UUID.randomUUID());
ModelMenuParameterPojo modelMenuParameterPojo = new ModelMenuParameterPojo();
modelMenuParameterPojo.setMenuId(menuId);
modelMenuParameterPojo.setSubsystem(parameter.getSubsystemName());
modelMenuParameterPojo.setParameterId(parameterId);
modelMenuParameterPojo.setParameterPer(parameterPer);
modelMenuParameterPojo.setId(uuid);
modelMenuParameterPojo.setCreationDate(new Date());
businessDatabase.getBusinessDatabase()
.doInsert(modelMenuParameterPojo);
//为角色分配权限
ModelRolePermissionPojo pojo = new ModelRolePermissionPojo();
pojo.setRoleId(roleId);
pojo.setPerId(uuid);
businessDatabase.getBusinessDatabase()
.doInsert(pojo);
}
}
} }