fix:公差分析库也需要走审批

This commit is contained in:
2026-02-06 09:52:50 +08:00
parent f136c0de8e
commit 94f57c895e
2 changed files with 61 additions and 18 deletions

View File

@@ -10,71 +10,76 @@ public enum DirTypeEnum {
* 知识库文件夹
*/
@Schema(description = "知识库文件夹", example = "1")
KNOWLEDGE_BASE_DIR("knowledge", 1),
KNOWLEDGE_BASE_DIR("knowledge", 1, "知识库"),
/**
* 项目节点文件夹
*/
@Schema(description = "项目节点文件夹", example = "2")
PROJECT_NODE_DIR("projectNode", 2),
PROJECT_NODE_DIR("projectNode", 2, "项目节点"),
/**
* 头像库文件夹
*/
@Schema(description = "头像库文件夹", example = "3")
AVATAR_DIR("avatar", 3),
AVATAR_DIR("avatar", 3, "头像库"),
/**
* 仿真参数库文件夹
*/
@Schema(description = "仿真参数库文件夹", example = "4")
SIMULATION_PARAMETER_DIR("simulationParameter", 4),
SIMULATION_PARAMETER_DIR("simulationParameter", 4, "仿真参数库"),
/**
* 训练模型文件夹
*/
@Schema(description = "训练模型文件", example = "5")
TRAIN_MODEL_DIR("trainModel", 5),
TRAIN_MODEL_DIR("trainModel", 5, "训练模型库"),
@Schema(description = "脚本文件夹", example = "6")
SCRIPT_DIR("script", 6),
SCRIPT_DIR("script", 6, "脚本库"),
/**
* 视频库
*/
@Schema(description = "视频库文件夹", example = "7")
VIDEO_DIR("video", 7),
VIDEO_DIR("video", 7, "视频库"),
/**
* 报告模板库
*/
@Schema(description = "报告模板库文件夹", example = "8")
REPORT_TEMPLATE_DIR("reportTemplate", 8),
REPORT_TEMPLATE_DIR("reportTemplate", 8, "报告模板库"),
/*
* 机器人库
*/
@Schema(description = "机器人库文件夹", example = "9")
ROBOT_DIR("robot", 9),
ROBOT_DIR("robot", 9, "机器人库"),
/**
* 工业设计库
*/
@Schema(description = "工业设计库文件夹", example = "10")
INDUSTRIAL_DESIGN_DIR("industrialDesign", 10),
INDUSTRIAL_DESIGN_DIR("industrialDesign", 10, "工业设计库"),
/**
* 公差分析库
*/
@Schema(description = "公差分析库文件夹", example = "11")
TOLERANCE_ANALYSIS_DIR("toleranceAnalysis", 11);
TOLERANCE_ANALYSIS_DIR("toleranceAnalysis", 11, "公差分析库");
/** 目录名称英文用于MinIO路径 */
String dirName;
/** 目录类型值 */
int value;
/** 目录显示名称(中文,用于界面展示和审批标题) */
String displayName;
DirTypeEnum(String dirName, int value) {
DirTypeEnum(String dirName, int value, String displayName) {
this.dirName = dirName;
this.value = value;
this.displayName = displayName;
}
public int getValue() {
@@ -85,6 +90,14 @@ public enum DirTypeEnum {
return dirName;
}
/**
* 获取目录显示名称(中文)
* @return 目录显示名称
*/
public String getDisplayName() {
return displayName;
}
// 根据value获取对应的枚举
public static DirTypeEnum getDirTypeByValue(int value) {
for (DirTypeEnum dirTypeEnum : values()) {
@@ -149,4 +162,34 @@ public enum DirTypeEnum {
}
return APPROVAL_REQUIRED_DIRS.contains(dirTypeEnum);
}
/**
* 根据目录类型和操作类型生成审批标题
* @param dirType 目录类型值
* @param action 操作类型:“目录删除”、“文件删除”、“文件新增”、“文件修改”、“文件元数据修改”、“文档新增”
* @return 审批标题,例如:“知识库目录删除”、“公差分析库文件新增”
*/
public static String buildApprovalTitle(Integer dirType, String action) {
if (dirType == null || action == null) {
return "文件审批"; // 默认标题
}
DirTypeEnum dirTypeEnum = getDirTypeByValue(dirType);
if (dirTypeEnum == null) {
return "文件审批"; // 默认标题
}
return dirTypeEnum.getDisplayName() + action;
}
/**
* 根据目录类型枚举和操作类型生成审批标题
* @param dirTypeEnum 目录类型枚举
* @param action 操作类型:“目录删除”、“文件删除”、“文件新增”、“文件修改”、“文件元数据修改”、“文档新增”
* @return 审批标题,例如:“知识库目录删除”、“公差分析库文件新增”
*/
public static String buildApprovalTitle(DirTypeEnum dirTypeEnum, String action) {
if (dirTypeEnum == null || action == null) {
return "文件审批"; // 默认标题
}
return dirTypeEnum.getDisplayName() + action;
}
}

View File

@@ -558,7 +558,7 @@ public class MinioFileIDataFileServiceImpl implements IDataFileService {
List.of(deleteDirMetadataInfo),
Sets.union(allFileIds, allDirIds),
deleteDirMetadataInfo,
"知识库目录删除",
DirTypeEnum.buildApprovalTitle(dirType, "目录删除"),
req.getTemplateId(),
req.getTemplateName()
);
@@ -711,7 +711,7 @@ public class MinioFileIDataFileServiceImpl implements IDataFileService {
List.of(deleteFileMetadataInfo),
Set.of(delFileId),
dirMetadataInfo,
"知识库文件删除",
DirTypeEnum.buildApprovalTitle(dirMetadataInfo.getDirType(), "文件删除"),
req.getTemplateId(),
req.getTemplateName()
);
@@ -2190,7 +2190,7 @@ public class MinioFileIDataFileServiceImpl implements IDataFileService {
}
FileApproveRequestBuilder uploadFileApproveRequestBuilder = FileApproveRequestBuilder.builder()
.toUpdateFileIds(List.of(fileInfo.getId()))
.contents("知识库文件新增")
.contents(DirTypeEnum.buildApprovalTitle(dirMetadataInfo.getDirType(), "文件新增"))
.approveType(ApproveTypeEnum.KNOWLEDGE_APPROVE)
.approveFileActionENUM(ApproveFileActionENUM.ADD)
.beforeData(List.of(fileInfo))
@@ -2375,7 +2375,7 @@ public class MinioFileIDataFileServiceImpl implements IDataFileService {
//发起审批
FileApproveRequestBuilder updateFileMetaIntoApproveRequestBuilder = FileApproveRequestBuilder.builder()
.toUpdateFileIds(List.of(fileMetadataInfo.getId()))
.contents("知识库文件元数据修改")
.contents(DirTypeEnum.buildApprovalTitle(dirMetadataInfo.getDirType(), "文件元数据修改"))
.approveType(ApproveTypeEnum.KNOWLEDGE_APPROVE)
.approveFileActionENUM(ApproveFileActionENUM.MODIFY)
.beforeData(List.of(fileMetadataInfo))
@@ -2538,7 +2538,7 @@ public class MinioFileIDataFileServiceImpl implements IDataFileService {
newFileInfo.setIsLatest(false);
FileApproveRequestBuilder uploadAndUpdateFileApproveRequestBuilder = FileApproveRequestBuilder.builder()
.toUpdateFileIds(List.of(newFileInfo.getId()))
.contents("知识库文件修改")
.contents(DirTypeEnum.buildApprovalTitle(dirMetadataInfo.getDirType(), "文件修改"))
.approveType(ApproveTypeEnum.KNOWLEDGE_APPROVE)
.approveFileActionENUM(ApproveFileActionENUM.MODIFY)
.beforeData(List.of(oldFileMetadataInfo))
@@ -3368,7 +3368,7 @@ public class MinioFileIDataFileServiceImpl implements IDataFileService {
// 构建审批内容
FileApproveRequestBuilder batchUploadFileApproveRequestBuilder = FileApproveRequestBuilder.builder()
.toUpdateFileIds(succBusinessIds)
.contents("知识库文档新增")
.contents(DirTypeEnum.buildApprovalTitle(dirMetadataInfo.getDirType(), "文档新增"))
.approveType(ApproveTypeEnum.KNOWLEDGE_APPROVE)
.approveFileActionENUM(ApproveFileActionENUM.ADD)
.beforeData(succFileMetadataInfos)