项目表添加材料分析库、项目资料库字段

This commit is contained in:
2025-10-10 10:07:59 +08:00
parent b8a4c06e68
commit 9cb2aa9751
5 changed files with 62 additions and 24 deletions

View File

@@ -68,6 +68,11 @@ public class KnowledgeBaseServiceImpl implements KnowledgeBaseService {
public String createKnowledgeBase(String companyName, String companyCode) { public String createKnowledgeBase(String companyName, String companyCode) {
String workspaceId = config.getWorkspaceId(); String workspaceId = config.getWorkspaceId();
try { try {
String kbId = getKnowledgeBaseIdByName(companyCode);
if(StrUtil.isNotEmpty(kbId)) {
return kbId;
}
Client client = clientFactory.createClient(); Client client = clientFactory.createClient();
CreateIndexResponse indexResponse = KnowledgeBaseUtil.createIndex(client, workspaceId, companyCode, companyName); CreateIndexResponse indexResponse = KnowledgeBaseUtil.createIndex(client, workspaceId, companyCode, companyName);
return indexResponse.getBody().getData().getId(); return indexResponse.getBody().getData().getId();

View File

@@ -78,12 +78,7 @@ public class OaCompanyController extends BaseController {
} }
if (oaCompanyService.save(oaCompany)) { if (oaCompanyService.save(oaCompany)) {
try { try {
//查询知识库 String kbId = knowledgeBaseService.createKnowledgeBase(oaCompany.getCompanyName(), oaCompany.getCompanyCode());
String kbId = knowledgeBaseService.getKnowledgeBaseIdByName(oaCompany.getCompanyCode());
//新建知识库
if(StrUtil.isEmpty(kbId)) {
kbId = knowledgeBaseService.createKnowledgeBase(oaCompany.getCompanyName(), oaCompany.getCompanyCode());
}
//绑定知识库 //绑定知识库
oaCompany.setKbId(kbId); oaCompany.setKbId(kbId);
oaCompanyService.updateById(oaCompany); oaCompanyService.updateById(oaCompany);
@@ -102,12 +97,7 @@ public class OaCompanyController extends BaseController {
return fail("单位唯一标识不能为空"); return fail("单位唯一标识不能为空");
} }
if(StrUtil.isEmpty(oaCompany.getKbId())) { if(StrUtil.isEmpty(oaCompany.getKbId())) {
//查询知识库 String kbId = knowledgeBaseService.createKnowledgeBase(oaCompany.getCompanyName(), oaCompany.getCompanyCode());
String kbId = knowledgeBaseService.getKnowledgeBaseIdByName(oaCompany.getCompanyCode());
//新建知识库
if(StrUtil.isEmpty(kbId)) {
kbId = knowledgeBaseService.createKnowledgeBase(oaCompany.getCompanyName(), oaCompany.getCompanyCode());
}
//绑定知识库 //绑定知识库
oaCompany.setKbId(kbId); oaCompany.setKbId(kbId);
} }

View File

@@ -3,7 +3,10 @@ package com.gxwebsoft.pwl.controller;
import cn.afterturn.easypoi.excel.ExcelImportUtil; import cn.afterturn.easypoi.excel.ExcelImportUtil;
import cn.afterturn.easypoi.excel.entity.ImportParams; import cn.afterturn.easypoi.excel.entity.ImportParams;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.gxwebsoft.ai.service.KnowledgeBaseService;
import com.gxwebsoft.cms.entity.CmsArticle; import com.gxwebsoft.cms.entity.CmsArticle;
import com.gxwebsoft.cms.entity.CmsArticleContent; import com.gxwebsoft.cms.entity.CmsArticleContent;
import com.gxwebsoft.cms.param.CmsArticleImportParam; import com.gxwebsoft.cms.param.CmsArticleImportParam;
@@ -25,6 +28,8 @@ import com.gxwebsoft.common.core.annotation.OperationLog;
import com.gxwebsoft.common.system.entity.User; import com.gxwebsoft.common.system.entity.User;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
@@ -51,6 +56,9 @@ public class PwlProjectController extends BaseController {
@Resource @Resource
private PwlProjectService pwlProjectService; private PwlProjectService pwlProjectService;
@Autowired
private KnowledgeBaseService knowledgeBaseService;
@PreAuthorize("hasAuthority('pwl:pwlProject:list')") @PreAuthorize("hasAuthority('pwl:pwlProject:list')")
@Operation(summary = "分页查询卫兰的项目项目系统") @Operation(summary = "分页查询卫兰的项目项目系统")
@GetMapping("/page") @GetMapping("/page")
@@ -109,16 +117,55 @@ public class PwlProjectController extends BaseController {
} }
} }
if (pwlProjectService.save(pwlProject)) { if (pwlProjectService.save(pwlProject)) {
createAnalysisLib(pwlProject);
createProjectLib(pwlProject);
pwlProjectService.updateById(pwlProject);
return success("添加成功"); return success("添加成功");
} }
return fail("添加失败"); return fail("添加失败");
} }
//创建材料分析库
private void createAnalysisLib(PwlProject pwlProject) {
if(StrUtil.isEmpty(pwlProject.getCode())) {
return ;
}
try {
String asLibName = "as"+pwlProject.getName();
String asLibCode = "as"+pwlProject.getCode();
String analysisKbId = knowledgeBaseService.createKnowledgeBase(asLibName, asLibCode);
pwlProject.setAnalysisLibrary(analysisKbId);
} catch (Exception e) {
e.printStackTrace();
}
}
//创建项目资料库
private void createProjectLib(PwlProject pwlProject) {
if(StrUtil.isEmpty(pwlProject.getCode())) {
return ;
}
try {
String pjLibName = "pj"+pwlProject.getName();
String pjLibCode = "pj"+pwlProject.getCode();
String projectKbId = knowledgeBaseService.createKnowledgeBase(pjLibName, pjLibCode);
pwlProject.setProjectLibrary(projectKbId);
} catch (Exception e) {
e.printStackTrace();
}
}
@PreAuthorize("hasAuthority('pwl:pwlProject:update')") @PreAuthorize("hasAuthority('pwl:pwlProject:update')")
@OperationLog @OperationLog
@Operation(summary = "修改卫兰的项目项目系统") @Operation(summary = "修改卫兰的项目项目系统")
@PutMapping() @PutMapping()
public ApiResult<?> update(@RequestBody PwlProject pwlProject) { public ApiResult<?> update(@RequestBody PwlProject pwlProject) {
if(StrUtil.isEmpty(pwlProject.getAnalysisLibrary())) {
createAnalysisLib(pwlProject);
}
if(StrUtil.isEmpty(pwlProject.getProjectLibrary())) {
createProjectLib(pwlProject);
}
if (pwlProjectService.updateById(pwlProject)) { if (pwlProjectService.updateById(pwlProject)) {
return success("修改成功"); return success("修改成功");
} }

View File

@@ -90,12 +90,7 @@ public class PwlProjectLibraryController extends BaseController {
try { try {
//kbName = biz00000000001 //kbName = biz00000000001
String kbName = pwlProjectLibrary.getType() + StrUtil.padPre(pwlProjectLibrary.getId().toString(), 11, '0'); String kbName = pwlProjectLibrary.getType() + StrUtil.padPre(pwlProjectLibrary.getId().toString(), 11, '0');
//通过知识库名称查询知识库 String kbId = knowledgeBaseService.createKnowledgeBase(pwlProjectLibrary.getName(),kbName);
String kbId = knowledgeBaseService.getKnowledgeBaseIdByName(kbName);
//新建知识库
if(StrUtil.isEmpty(kbId)) {
kbId = knowledgeBaseService.createKnowledgeBase(pwlProjectLibrary.getName(),kbName);
}
//绑定知识库 //绑定知识库
pwlProjectLibrary.setKbId(kbId); pwlProjectLibrary.setKbId(kbId);
pwlProjectLibraryService.updateById(pwlProjectLibrary); pwlProjectLibraryService.updateById(pwlProjectLibrary);
@@ -114,12 +109,7 @@ public class PwlProjectLibraryController extends BaseController {
if(StrUtil.isEmpty(pwlProjectLibrary.getKbId())) { if(StrUtil.isEmpty(pwlProjectLibrary.getKbId())) {
//kbName = biz00000000001 //kbName = biz00000000001
String kbName = pwlProjectLibrary.getType() + StrUtil.padPre(pwlProjectLibrary.getId().toString(), 11, '0'); String kbName = pwlProjectLibrary.getType() + StrUtil.padPre(pwlProjectLibrary.getId().toString(), 11, '0');
//通过知识库名称查询知识库 String kbId = knowledgeBaseService.createKnowledgeBase(pwlProjectLibrary.getName(),kbName);
String kbId = knowledgeBaseService.getKnowledgeBaseIdByName(kbName);
//新建知识库
if(StrUtil.isEmpty(kbId)) {
kbId = knowledgeBaseService.createKnowledgeBase(pwlProjectLibrary.getName(),kbName);
}
//绑定知识库 //绑定知识库
pwlProjectLibrary.setKbId(kbId); pwlProjectLibrary.setKbId(kbId);
} }

View File

@@ -181,6 +181,12 @@ public class PwlProject implements Serializable {
@Schema(description = "资料库库IDs") @Schema(description = "资料库库IDs")
private String libraryIds; //英文逗号分割 private String libraryIds; //英文逗号分割
@Schema(description = "材料分析库")
private String analysisLibrary;
@Schema(description = "项目资料库")
private String projectLibrary;
@Schema(description = "租户id") @Schema(description = "租户id")
private Integer tenantId; private Integer tenantId;