权限框架修改

This commit is contained in:
ys.git 2025-12-26 15:52:26 +08:00
parent 47f5e9df7f
commit cac4145e57
6 changed files with 56 additions and 19 deletions

View File

@ -8,9 +8,10 @@ public class RolePerJoinRequest {
private String roleId; private String roleId;
// private String menuName; // private String menuName;
// private String parameterId; // private String parameterId;
private String subsystem; // private String subsystem;
//零部件名称 // //零部件名称
private String partsName; // private String partsName;
private String permissionPath;
private Integer parameterPer; private Integer parameterPer;
private String userId; private String userId;
} }

View File

@ -27,6 +27,8 @@ public class ModelMenuParameterPojo {
private String subsystem; private String subsystem;
//零部件名称 //零部件名称
private String partsName; private String partsName;
//权限路径
private String permissionPath;
/** /**
* 参数ID,; * 参数ID,;
*/ */

View File

@ -7,7 +7,6 @@ import lombok.NoArgsConstructor;
import java.util.ArrayList; import java.util.ArrayList;
@Data @Data
@AllArgsConstructor @AllArgsConstructor
@NoArgsConstructor @NoArgsConstructor
@ -18,6 +17,7 @@ public class MenuParamView {
private String partsName; private String partsName;
// private String parameterName; // private String parameterName;
// private String parameterId; // private String parameterId;
private String permissionPath;
private String parameterPer; private String parameterPer;
private Integer isAdmin; private Integer isAdmin;
} }

View File

@ -4,6 +4,9 @@ package com.xdap.self_development.service.impl;
import com.alibaba.excel.EasyExcel; import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelWriter; import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.write.metadata.WriteSheet; import com.alibaba.excel.write.metadata.WriteSheet;
import com.alibaba.excel.write.metadata.style.WriteCellStyle;
import com.alibaba.excel.write.metadata.style.WriteFont;
import com.alibaba.excel.write.style.HorizontalCellStyleStrategy;
import com.definesys.mpaas.query.MpaasQueryFactory; import com.definesys.mpaas.query.MpaasQueryFactory;
import com.definesys.mpaas.query.db.PageQueryResult; import com.definesys.mpaas.query.db.PageQueryResult;
import com.xdap.api.moudle.user.pojo.XdapUsers; import com.xdap.api.moudle.user.pojo.XdapUsers;
@ -24,6 +27,7 @@ import com.xdap.self_development.service.ResponsiblePerService;
import com.xdap.self_development.service.XdapDeptUsersService; import com.xdap.self_development.service.XdapDeptUsersService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.ObjectUtils;
import org.apache.poi.ss.usermodel.IndexedColors;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -402,7 +406,21 @@ public class DataEntryEngineModelServiceImpl implements DataEntryEngineModelServ
// 定义Sheet名称集合 // 定义Sheet名称集合
try (ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream()).build()) { try (ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream()).build()) {
List<DataEntryEngineModelExcel> dataEntryEngineModelExcel = new ArrayList<>(); List<DataEntryEngineModelExcel> dataEntryEngineModelExcel = new ArrayList<>();
WriteCellStyle headWriteCellStyle = new WriteCellStyle();
// 设置背景色为灰色
headWriteCellStyle.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex());
// 设置字体
WriteFont headWriteFont = new WriteFont();
headWriteFont.setFontHeightInPoints((short) 12); // 字体大小
headWriteFont.setBold(true); // 加粗
headWriteCellStyle.setWriteFont(headWriteFont);
// 创建表头策略
HorizontalCellStyleStrategy horizontalCellStyleStrategy =
new HorizontalCellStyleStrategy(headWriteCellStyle, new WriteCellStyle());
WriteSheet sheet = EasyExcel.writerSheet() WriteSheet sheet = EasyExcel.writerSheet()
.registerWriteHandler(horizontalCellStyleStrategy)
.head(DataEntryEngineModelExcel.class) // 所有Sheet使用相同的表头 .head(DataEntryEngineModelExcel.class) // 所有Sheet使用相同的表头
.build(); .build();
excelWriter.write(dataEntryEngineModelExcel, sheet); // 写入数据只生成表头 excelWriter.write(dataEntryEngineModelExcel, sheet); // 写入数据只生成表头

View File

@ -4,6 +4,9 @@ package com.xdap.self_development.service.impl;
import com.alibaba.excel.EasyExcel; import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelWriter; import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.write.metadata.WriteSheet; import com.alibaba.excel.write.metadata.WriteSheet;
import com.alibaba.excel.write.metadata.style.WriteCellStyle;
import com.alibaba.excel.write.metadata.style.WriteFont;
import com.alibaba.excel.write.style.HorizontalCellStyleStrategy;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.definesys.mpaas.query.MpaasQueryFactory; import com.definesys.mpaas.query.MpaasQueryFactory;
import com.xdap.api.moudle.user.pojo.XdapUsers; import com.xdap.api.moudle.user.pojo.XdapUsers;
@ -22,6 +25,7 @@ import com.xdap.self_development.pojo.dto.EngineParamDetailDTO;
import com.xdap.self_development.service.*; import com.xdap.self_development.service.*;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.ObjectUtils;
import org.apache.poi.ss.usermodel.IndexedColors;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -227,6 +231,19 @@ public class EngineParamDetailServiceImpl implements EngineParamDetailService {
String.format("模板参数未配置") String.format("模板参数未配置")
); );
} }
WriteCellStyle headWriteCellStyle = new WriteCellStyle();
// 设置背景色为灰色
headWriteCellStyle.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex());
// 设置字体
WriteFont headWriteFont = new WriteFont();
headWriteFont.setFontHeightInPoints((short) 12); // 字体大小
headWriteFont.setBold(true); // 加粗
headWriteCellStyle.setWriteFont(headWriteFont);
// 创建表头策略
HorizontalCellStyleStrategy horizontalCellStyleStrategy =
new HorizontalCellStyleStrategy(headWriteCellStyle, new WriteCellStyle());
List<String> sheetNames = List<String> sheetNames =
parameterByCondition.stream().map(Parameter::getSubsystemName).distinct().collect(Collectors.toList()); parameterByCondition.stream().map(Parameter::getSubsystemName).distinct().collect(Collectors.toList());
List<Parameter> parameters = selectAllByNewVersion(); List<Parameter> parameters = selectAllByNewVersion();
@ -243,6 +260,7 @@ public class EngineParamDetailServiceImpl implements EngineParamDetailService {
engineParamDetailExcels.add(engineParamDetailExcel); engineParamDetailExcels.add(engineParamDetailExcel);
} }
WriteSheet sheet = EasyExcel.writerSheet(i, sheetNames.get(i)) WriteSheet sheet = EasyExcel.writerSheet(i, sheetNames.get(i))
.registerWriteHandler(horizontalCellStyleStrategy)
.head(EngineParamDetailExcel.class) // 所有Sheet使用相同的表头 .head(EngineParamDetailExcel.class) // 所有Sheet使用相同的表头
.build(); .build();
excelWriter.write(engineParamDetailExcels, sheet); // 写入数据只生成表头 excelWriter.write(engineParamDetailExcels, sheet); // 写入数据只生成表头

View File

@ -45,7 +45,7 @@ public class ModelRoleServiceImpl implements ModelRoleService {
.eq("role_code", request.getRoleCode()) .eq("role_code", request.getRoleCode())
.doQuery(ModelRolesPojo.class); .doQuery(ModelRolesPojo.class);
if (ObjectUtils.isNotEmpty(modelRolesPojos)) { if (ObjectUtils.isNotEmpty(modelRolesPojos)) {
throw new RuntimeException("角色代号已存在"); throw new RuntimeException("角色已存在");
} }
ModelRolesPojo modelRolesPojo = new ModelRolesPojo(); ModelRolesPojo modelRolesPojo = new ModelRolesPojo();
BeanUtils.copyProperties(request, modelRolesPojo); BeanUtils.copyProperties(request, modelRolesPojo);
@ -86,19 +86,17 @@ public class ModelRoleServiceImpl implements ModelRoleService {
//增加新权限 //增加新权限
for (RolePerJoinRequest request : requests) { for (RolePerJoinRequest request : requests) {
String roleId = request.getRoleId(); String roleId = request.getRoleId();
String subsystem = request.getSubsystem(); String permissionPath = request.getPermissionPath();
String partsName = request.getPartsName();
// String menuName = request.getMenuName(); // String menuName = request.getMenuName();
// String parameterId = request.getParameterId(); // String parameterId = request.getParameterId();
Integer parameterPer = request.getParameterPer(); Integer parameterPer = request.getParameterPer();
if (ObjectUtils.isEmpty(subsystem) || ObjectUtils.isEmpty(parameterPer) || ObjectUtils.isEmpty(roleId) || ObjectUtils.isEmpty(partsName)) { if (ObjectUtils.isEmpty(permissionPath) || ObjectUtils.isEmpty(parameterPer) || ObjectUtils.isEmpty(roleId)) {
log.warn("参数不完整无法写入"); log.warn("参数不完整无法写入");
continue; continue;
} }
List<ModelMenuParameterPojo> modelMenuParameterPojos = businessDatabase.getBusinessDatabase() List<ModelMenuParameterPojo> modelMenuParameterPojos = businessDatabase.getBusinessDatabase()
// .eq("menu_id", menuName) // .eq("menu_id", menuName)
.eq("subsystem", subsystem) .eq("permission_path", permissionPath)
.eq("parts_name", partsName)
.eq("parameter_per", parameterPer) .eq("parameter_per", parameterPer)
.doQuery(ModelMenuParameterPojo.class); .doQuery(ModelMenuParameterPojo.class);
@ -111,9 +109,10 @@ public class ModelRoleServiceImpl implements ModelRoleService {
// .doQuery(Parameter.class).get(0); // .doQuery(Parameter.class).get(0);
ModelMenuParameterPojo modelMenuParameterPojo = new ModelMenuParameterPojo(); ModelMenuParameterPojo modelMenuParameterPojo = new ModelMenuParameterPojo();
// modelMenuParameterPojo.setMenuId(menuName); // modelMenuParameterPojo.setMenuId(menuName);
modelMenuParameterPojo.setSubsystem(subsystem); // modelMenuParameterPojo.setSubsystem(subsystem);
modelMenuParameterPojo.setPartsName(partsName); // modelMenuParameterPojo.setPartsName(partsName);
// modelMenuParameterPojo.setParameterId(parameterId); // modelMenuParameterPojo.setParameterId(parameterId);
modelMenuParameterPojo.setPermissionPath(permissionPath);
modelMenuParameterPojo.setParameterPer(parameterPer); modelMenuParameterPojo.setParameterPer(parameterPer);
modelMenuParameterPojo.setId(id); modelMenuParameterPojo.setId(id);
modelMenuParameterPojo.setCreatedBy(request.getUserId()); modelMenuParameterPojo.setCreatedBy(request.getUserId());
@ -178,9 +177,8 @@ public class ModelRoleServiceImpl implements ModelRoleService {
.eq("is_enabled", 1) .eq("is_enabled", 1)
.eq("id", roleID) .eq("id", roleID)
.doQueryFirst(ModelRolesPojo.class); .doQueryFirst(ModelRolesPojo.class);
if (ObjectUtils.isNotEmpty(modelRolesPojos) && (modelRolesPojos.getRoleCode().contains("ADMIN") if (ObjectUtils.isNotEmpty(modelRolesPojos) && (modelRolesPojos.getRoleCode().equals("super_admin"))) {
|| modelRolesPojos.getRoleCode().contains("Admin") || modelRolesPojos.getRoleCode().contains("admin"))) { return Arrays.asList(new MenuParamView(roleID, "","", "", "", 1));
return Arrays.asList(new MenuParamView(roleID, "", "", "",1));
} }
ArrayList<MenuParamView> menuParamViews = new ArrayList<>(); ArrayList<MenuParamView> menuParamViews = new ArrayList<>();
List<ModelRolePermissionPojo> role = businessDatabase.getBusinessDatabase() List<ModelRolePermissionPojo> role = businessDatabase.getBusinessDatabase()
@ -220,8 +218,8 @@ public class ModelRoleServiceImpl implements ModelRoleService {
MenuParamView menuParamView = new MenuParamView(); MenuParamView menuParamView = new MenuParamView();
menuParamView.setId(menuParameter.getId()); menuParamView.setId(menuParameter.getId());
// menuParamView.setMenuPath(modelMenuDictionaryPojo.getMenuDesc()); // menuParamView.setMenuPath(modelMenuDictionaryPojo.getMenuDesc());
menuParamView.setSubsystem(menuParameter.getSubsystem()); // menuParamView.setPartsName(menuParameter.getPartsName());
menuParamView.setPartsName(menuParameter.getPartsName()); menuParamView.setPermissionPath(menuParameter.getPermissionPath());
menuParamView.setParameterPer(byCode.getDesc()); menuParamView.setParameterPer(byCode.getDesc());
menuParamViews.add(menuParamView); menuParamViews.add(menuParamView);
} }