优化三重一大生成逻辑
This commit is contained in:
@@ -66,28 +66,49 @@ public class OaCompanyServiceImpl extends ServiceImpl<OaCompanyMapper, OaCompany
|
||||
|
||||
@Override
|
||||
public void initCompanyDocDirectories(OaCompany oaCompany, Integer userId) {
|
||||
String workspaceId = config.getWorkspaceId();
|
||||
String topCategoryId = config.getTopCategoryId();
|
||||
String categoryId = "";
|
||||
try {
|
||||
Client client = clientFactory.createClient();
|
||||
categoryId = AiCloudDataCenterUtil.addCategory(client, workspaceId, topCategoryId, oaCompany.getCompanyName()).getBody().getData().getCategoryId();
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
String workspaceId = config.getWorkspaceId();
|
||||
String topCategoryId = config.getTopCategoryId();
|
||||
String categoryId = "";
|
||||
try {
|
||||
Client client = clientFactory.createClient();
|
||||
categoryId = AiCloudDataCenterUtil.addCategory(client, workspaceId, topCategoryId, oaCompany.getCompanyName()).getBody().getData().getCategoryId();
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
return; // 创建分类失败时直接返回
|
||||
}
|
||||
|
||||
// 1. 先创建顶级目录(公司名称)
|
||||
AiCloudDoc topDirectory = new AiCloudDoc();
|
||||
topDirectory.setCategoryId(categoryId);
|
||||
topDirectory.setCompanyId(oaCompany.getCompanyId());
|
||||
topDirectory.setParentId(0); // 顶级目录的父ID为0
|
||||
topDirectory.setName(oaCompany.getCompanyName());
|
||||
topDirectory.setSortNumber(0);
|
||||
topDirectory.setStatus(0);
|
||||
topDirectory.setDeleted(0);
|
||||
topDirectory.setUserId(userId);
|
||||
topDirectory.setTenantId(oaCompany.getTenantId());
|
||||
topDirectory.setCreateTime(LocalDateTime.now());
|
||||
topDirectory.setUpdateTime(LocalDateTime.now());
|
||||
|
||||
// 保存顶级目录并获取其ID
|
||||
aiCloudDocService.save(topDirectory);
|
||||
Integer topDirId = topDirectory.getId(); // 假设实体类有getDocId()方法
|
||||
|
||||
// 2. 创建子目录列表
|
||||
List<String> directoryNames = Arrays.asList(
|
||||
"贯彻决策部署", "单位发展战略执行", "三重一大执行", "目标完成", "财务管理",
|
||||
"国资管理", "重大投资情况", "治理结构", "人员编制", "廉政情况", "历史审计问题"
|
||||
"1.基本情况", "2.企业领导人员任职情况", "3.任期内年度总结报告", "4.公司章程及议事规则",
|
||||
"5.领导班子分工", "6.任期内会议纪要与会议记录", "7.内部控制制度", "8.企业发展规划及战略",
|
||||
"9.目标责任", "10-11.重大经济事项决策及执行(项目)", "12.固定资产、资产处置资料",
|
||||
"13.财务数据", "14.以前年度审计"
|
||||
);
|
||||
|
||||
List<AiCloudDoc> directories = new ArrayList<>();
|
||||
|
||||
for (int i = 0; i < directoryNames.size(); i++) {
|
||||
AiCloudDoc doc = new AiCloudDoc();
|
||||
doc.setCategoryId(categoryId);
|
||||
doc.setCompanyId(oaCompany.getCompanyId());
|
||||
doc.setParentId(0); // 顶级目录
|
||||
doc.setParentId(topDirId); // 关键修改:父目录ID设为顶级目录的ID
|
||||
doc.setName(directoryNames.get(i));
|
||||
doc.setSortNumber(i + 1);
|
||||
doc.setStatus(0);
|
||||
@@ -96,11 +117,10 @@ public class OaCompanyServiceImpl extends ServiceImpl<OaCompanyMapper, OaCompany
|
||||
doc.setTenantId(oaCompany.getTenantId());
|
||||
doc.setCreateTime(LocalDateTime.now());
|
||||
doc.setUpdateTime(LocalDateTime.now());
|
||||
|
||||
directories.add(doc);
|
||||
}
|
||||
|
||||
// 批量保存目录
|
||||
// 批量保存子目录
|
||||
aiCloudDocService.saveBatch(directories);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user