|
@@ -169,17 +169,17 @@ public class SysKgServiceImpl extends ServiceImpl<SysKgMapper, SysKg> implements
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
- public List listKg() {
|
|
|
|
|
|
+ public List<TreeFile> listKg() {
|
|
// 获取知识库
|
|
// 获取知识库
|
|
List<SysKb> listKb = sysKbMapper.selectList(new QueryWrapper<>());
|
|
List<SysKb> listKb = sysKbMapper.selectList(new QueryWrapper<>());
|
|
- List l = new ArrayList();
|
|
|
|
|
|
+ List<TreeFile> l = new ArrayList();
|
|
// 将知识库所有数据,构造成前端所需的树结构
|
|
// 将知识库所有数据,构造成前端所需的树结构
|
|
for (SysKb sysKb : listKb) {
|
|
for (SysKb sysKb : listKb) {
|
|
TreeFile tre = new TreeFile();
|
|
TreeFile tre = new TreeFile();
|
|
tre.setId(sysKb.getKbId());
|
|
tre.setId(sysKb.getKbId());
|
|
tre.setName(sysKb.getName());
|
|
tre.setName(sysKb.getName());
|
|
tre.setPath(sysKb.getUrl());
|
|
tre.setPath(sysKb.getUrl());
|
|
- List list = sysFileService.listTreeFiles(sysKb.getKbId());
|
|
|
|
|
|
+ List<TreeFile> list = sysFileService.listTreeFiles(sysKb.getKbId());
|
|
tre.setChildList(list);
|
|
tre.setChildList(list);
|
|
l.add(tre);
|
|
l.add(tre);
|
|
}
|
|
}
|
|
@@ -189,7 +189,7 @@ public class SysKgServiceImpl extends ServiceImpl<SysKgMapper, SysKg> implements
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public PageInfo list(FileKey kgKey) {
|
|
public PageInfo list(FileKey kgKey) {
|
|
- log.info("******接口(list)--->入参(kg):{}",JSON.toJSONString(kgKey));
|
|
|
|
|
|
+ log.info("******接口(list)--->入参(kg):{}", JSON.toJSONString(kgKey));
|
|
PageHelper.startPage(kgKey.getPageNum(), kgKey.getPageSize());
|
|
PageHelper.startPage(kgKey.getPageNum(), kgKey.getPageSize());
|
|
List<SysKg> sysKgs = baseMapper.selectList(new QueryWrapper<SysKg>()
|
|
List<SysKg> sysKgs = baseMapper.selectList(new QueryWrapper<SysKg>()
|
|
.eq("user_id", SecurityUtils.getUserId())
|
|
.eq("user_id", SecurityUtils.getUserId())
|
|
@@ -203,9 +203,15 @@ public class SysKgServiceImpl extends ServiceImpl<SysKgMapper, SysKg> implements
|
|
@Override
|
|
@Override
|
|
public void algorithm(AlgSpO algSpO) {
|
|
public void algorithm(AlgSpO algSpO) {
|
|
log.info("算法传参map:{}", JSON.toJSONString(algSpO));
|
|
log.info("算法传参map:{}", JSON.toJSONString(algSpO));
|
|
- // todo 先这么做,以后还需改动
|
|
|
|
- sysEntityInstanceMapper.delete(new QueryWrapper<SysEntityInstance>().eq("kg_id", algSpO.getKgId()));
|
|
|
|
- sysEntityRelationMapper.delete(new QueryWrapper<SysEntityRelation>().eq("kg_id", algSpO.getKgId()));
|
|
|
|
|
|
+ // 二次更新时,先删除抽出来的数据,然后在进行保存
|
|
|
|
+ sysEntityInstanceMapper.delete(new QueryWrapper<SysEntityInstance>()
|
|
|
|
+ .eq("kg_id", algSpO.getKgId())
|
|
|
|
+ .eq("difference", Hodgepodge.DIFFERENCE_EXTRACT)
|
|
|
|
+ );
|
|
|
|
+ sysEntityRelationMapper.delete(new QueryWrapper<SysEntityRelation>()
|
|
|
|
+ .eq("kg_id", algSpO.getKgId())
|
|
|
|
+ .eq("difference", Hodgepodge.DIFFERENCE_EXTRACT)
|
|
|
|
+ );
|
|
Integer integer = 0;
|
|
Integer integer = 0;
|
|
String oCopy = "";
|
|
String oCopy = "";
|
|
String sCopy = "";
|
|
String sCopy = "";
|
|
@@ -226,6 +232,8 @@ public class SysKgServiceImpl extends ServiceImpl<SysKgMapper, SysKg> implements
|
|
sysEntityInstanceS.setInstanceId(MD5.create().digestHex16((String) map.get("s")));
|
|
sysEntityInstanceS.setInstanceId(MD5.create().digestHex16((String) map.get("s")));
|
|
sysEntityInstanceS.setName((String) map.get("s"));
|
|
sysEntityInstanceS.setName((String) map.get("s"));
|
|
sysEntityInstanceS.setEntityName((String) map.get("sType"));
|
|
sysEntityInstanceS.setEntityName((String) map.get("sType"));
|
|
|
|
+ // 区别(0算法抽取,1手动添加)
|
|
|
|
+ sysEntityInstanceS.setDifference(Hodgepodge.DIFFERENCE_EXTRACT);
|
|
sysEntityInstanceMapper.insert(sysEntityInstanceS);
|
|
sysEntityInstanceMapper.insert(sysEntityInstanceS);
|
|
sCopy = MD5.create().digestHex16((String) map.get("s"));
|
|
sCopy = MD5.create().digestHex16((String) map.get("s"));
|
|
} else {
|
|
} else {
|
|
@@ -245,6 +253,8 @@ public class SysKgServiceImpl extends ServiceImpl<SysKgMapper, SysKg> implements
|
|
sysEntityInstanceO.setInstanceId(MD5.create().digestHex16((String) map.get("o")));
|
|
sysEntityInstanceO.setInstanceId(MD5.create().digestHex16((String) map.get("o")));
|
|
sysEntityInstanceO.setName((String) map.get("o"));
|
|
sysEntityInstanceO.setName((String) map.get("o"));
|
|
sysEntityInstanceO.setEntityName((String) map.get("oType"));
|
|
sysEntityInstanceO.setEntityName((String) map.get("oType"));
|
|
|
|
+ // 区别(0算法抽取,1手动添加)
|
|
|
|
+ sysEntityInstanceO.setDifference(Hodgepodge.DIFFERENCE_EXTRACT);
|
|
sysEntityInstanceMapper.insert(sysEntityInstanceO);
|
|
sysEntityInstanceMapper.insert(sysEntityInstanceO);
|
|
oCopy = MD5.create().digestHex16((String) map.get("o"));
|
|
oCopy = MD5.create().digestHex16((String) map.get("o"));
|
|
} else {
|
|
} else {
|
|
@@ -258,7 +268,7 @@ public class SysKgServiceImpl extends ServiceImpl<SysKgMapper, SysKg> implements
|
|
.eq("start_id", sCopy)
|
|
.eq("start_id", sCopy)
|
|
.eq("end_id", oCopy)
|
|
.eq("end_id", oCopy)
|
|
);
|
|
);
|
|
- if (list.size() == Hodgepodge.NUMBER) {
|
|
|
|
|
|
+ if (list.size() == Hodgepodge.NUMBER) {
|
|
// 插入实例关系
|
|
// 插入实例关系
|
|
SysEntityRelation sysEntityRelation = new SysEntityRelation();
|
|
SysEntityRelation sysEntityRelation = new SysEntityRelation();
|
|
sysEntityRelation.setKgId(algSpO.getKgId());
|
|
sysEntityRelation.setKgId(algSpO.getKgId());
|
|
@@ -271,6 +281,8 @@ public class SysKgServiceImpl extends ServiceImpl<SysKgMapper, SysKg> implements
|
|
sysEntityRelation.setEntityRelation(map.get("sType") + "-" + map.get("pType") + "-" + map.get("oType"));
|
|
sysEntityRelation.setEntityRelation(map.get("sType") + "-" + map.get("pType") + "-" + map.get("oType"));
|
|
// 设置基本信息,创建人、创建时间等。
|
|
// 设置基本信息,创建人、创建时间等。
|
|
sysEntityRelation.setCreateTime(DateUtil.date());
|
|
sysEntityRelation.setCreateTime(DateUtil.date());
|
|
|
|
+ // 区别(0算法抽取,1手动添加)
|
|
|
|
+ sysEntityRelation.setDifference(Hodgepodge.DIFFERENCE_EXTRACT);
|
|
sysEntityRelationMapper.insert(sysEntityRelation);
|
|
sysEntityRelationMapper.insert(sysEntityRelation);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -583,6 +595,8 @@ public class SysKgServiceImpl extends ServiceImpl<SysKgMapper, SysKg> implements
|
|
sysEntityInstance.setCreateBy(String.valueOf(userId));
|
|
sysEntityInstance.setCreateBy(String.valueOf(userId));
|
|
sysEntityInstance.setUserId(userId);
|
|
sysEntityInstance.setUserId(userId);
|
|
sysEntityInstance.setCreateTime(new Date());
|
|
sysEntityInstance.setCreateTime(new Date());
|
|
|
|
+ // 区别(0算法抽取,1手动添加)
|
|
|
|
+ sysEntityInstance.setDifference(Hodgepodge.DIFFERENCE);
|
|
sysEntityInstanceMapper.insert(sysEntityInstance);
|
|
sysEntityInstanceMapper.insert(sysEntityInstance);
|
|
} else {
|
|
} else {
|
|
sysEntityInstance.setInstanceId(nameSize.get(0).getInstanceId());
|
|
sysEntityInstance.setInstanceId(nameSize.get(0).getInstanceId());
|
|
@@ -619,6 +633,8 @@ public class SysKgServiceImpl extends ServiceImpl<SysKgMapper, SysKg> implements
|
|
if (keyEntityNce.getEntityName() != null && !"".equals(keyEntityNce.getEntityName())) {
|
|
if (keyEntityNce.getEntityName() != null && !"".equals(keyEntityNce.getEntityName())) {
|
|
queryWrapper.eq("entity_name", keyEntityNce.getEntityName());
|
|
queryWrapper.eq("entity_name", keyEntityNce.getEntityName());
|
|
}
|
|
}
|
|
|
|
+ // 对列表按照时间进行排序
|
|
|
|
+ queryWrapper.orderByDesc("create_time");
|
|
PageHelper.startPage(keyEntityNce.getPageNum(), keyEntityNce.getPageSize());
|
|
PageHelper.startPage(keyEntityNce.getPageNum(), keyEntityNce.getPageSize());
|
|
List<SysEntityInstance> entityNceList = sysEntityInstanceMapper.selectList(queryWrapper);
|
|
List<SysEntityInstance> entityNceList = sysEntityInstanceMapper.selectList(queryWrapper);
|
|
PageInfo page = new PageInfo(entityNceList);
|
|
PageInfo page = new PageInfo(entityNceList);
|
|
@@ -631,6 +647,7 @@ public class SysKgServiceImpl extends ServiceImpl<SysKgMapper, SysKg> implements
|
|
public PageInfo selEntityRelation(FileKey keyEntityRelation) {
|
|
public PageInfo selEntityRelation(FileKey keyEntityRelation) {
|
|
log.info("********接口(selEntityRelation)--->入参(keyEntityRelation):{}", JSON.toJSONString(keyEntityRelation));
|
|
log.info("********接口(selEntityRelation)--->入参(keyEntityRelation):{}", JSON.toJSONString(keyEntityRelation));
|
|
QueryWrapper<SysEntityRelation> queryWrap = new QueryWrapper();
|
|
QueryWrapper<SysEntityRelation> queryWrap = new QueryWrapper();
|
|
|
|
+ queryWrap.eq("kg_id", keyEntityRelation.getKgId());
|
|
|
|
|
|
if (keyEntityRelation.getKeyWord() != null && !"".equals(keyEntityRelation.getKeyWord())) {
|
|
if (keyEntityRelation.getKeyWord() != null && !"".equals(keyEntityRelation.getKeyWord())) {
|
|
PageHelper.startPage(keyEntityRelation.getPageNum(), keyEntityRelation.getPageSize());
|
|
PageHelper.startPage(keyEntityRelation.getPageNum(), keyEntityRelation.getPageSize());
|
|
@@ -666,7 +683,11 @@ public class SysKgServiceImpl extends ServiceImpl<SysKgMapper, SysKg> implements
|
|
return page;
|
|
return page;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- return null;
|
|
|
|
|
|
+ PageHelper.startPage(keyEntityRelation.getPageNum(), keyEntityRelation.getPageSize());
|
|
|
|
+ List<SysEntityRelation> sysEntityRelations = sysEntityRelationMapper.selectList(queryWrap);
|
|
|
|
+ PageInfo page = new PageInfo(sysEntityRelations);
|
|
|
|
+ log.info("********接口(selEntityRelation)--->出参(page):{}", JSON.toJSONString(page));
|
|
|
|
+ return page;
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -737,9 +758,9 @@ public class SysKgServiceImpl extends ServiceImpl<SysKgMapper, SysKg> implements
|
|
SysEntityAll sysEntityAll = selEntityAll(exportSchemaData.getKgId());
|
|
SysEntityAll sysEntityAll = selEntityAll(exportSchemaData.getKgId());
|
|
sysEntityAll.setKgId(exportSchemaData.getKgId());
|
|
sysEntityAll.setKgId(exportSchemaData.getKgId());
|
|
log.info("待导出的图谱schema数据 sysEntityAll:{}", JSON.toJSONString(sysEntityAll));
|
|
log.info("待导出的图谱schema数据 sysEntityAll:{}", JSON.toJSONString(sysEntityAll));
|
|
- if (null != sysEntityAll){
|
|
|
|
|
|
+ if (null != sysEntityAll) {
|
|
ExportSysEntity exportSysEntity = new ExportSysEntity();
|
|
ExportSysEntity exportSysEntity = new ExportSysEntity();
|
|
- BeanUtils.copyProperties(sysEntityAll,exportSysEntity);
|
|
|
|
|
|
+ BeanUtils.copyProperties(sysEntityAll, exportSysEntity);
|
|
exportSysEntity.setEntityAll(CommonUtils.dealEntityId(JSONArray.parseArray(sysEntityAll.getEntityAll())));
|
|
exportSysEntity.setEntityAll(CommonUtils.dealEntityId(JSONArray.parseArray(sysEntityAll.getEntityAll())));
|
|
exportSysEntity.setEntityKgAll(JSONArray.parseArray(sysEntityAll.getEntityKgAll()));
|
|
exportSysEntity.setEntityKgAll(JSONArray.parseArray(sysEntityAll.getEntityKgAll()));
|
|
exportSysEntity.setRelationAll(CommonUtils.dealRelationId(JSONArray.parseArray(sysEntityAll.getRelationAll())));
|
|
exportSysEntity.setRelationAll(CommonUtils.dealRelationId(JSONArray.parseArray(sysEntityAll.getRelationAll())));
|
|
@@ -776,7 +797,7 @@ public class SysKgServiceImpl extends ServiceImpl<SysKgMapper, SysKg> implements
|
|
BeanUtils.copyProperties(sysEntityAll, sysEntity);
|
|
BeanUtils.copyProperties(sysEntityAll, sysEntity);
|
|
// // 处理前端存储的实体和关系数据。
|
|
// // 处理前端存储的实体和关系数据。
|
|
ExportSysEntity exportSysEntity = new ExportSysEntity();
|
|
ExportSysEntity exportSysEntity = new ExportSysEntity();
|
|
- BeanUtils.copyProperties(sysEntityAll,exportSysEntity);
|
|
|
|
|
|
+ BeanUtils.copyProperties(sysEntityAll, exportSysEntity);
|
|
exportSysEntity.setEntityAll(JSONArray.parseArray(sysEntityAll.getEntityAll()));
|
|
exportSysEntity.setEntityAll(JSONArray.parseArray(sysEntityAll.getEntityAll()));
|
|
exportSysEntity.setEntityKgAll(JSONArray.parseArray(sysEntityAll.getEntityKgAll()));
|
|
exportSysEntity.setEntityKgAll(JSONArray.parseArray(sysEntityAll.getEntityKgAll()));
|
|
exportSysEntity.setRelationAll(JSONArray.parseArray(sysEntityAll.getRelationAll()));
|
|
exportSysEntity.setRelationAll(JSONArray.parseArray(sysEntityAll.getRelationAll()));
|
|
@@ -788,7 +809,7 @@ public class SysKgServiceImpl extends ServiceImpl<SysKgMapper, SysKg> implements
|
|
sysEntity.setUserId(SecurityUtils.getUserId());
|
|
sysEntity.setUserId(SecurityUtils.getUserId());
|
|
sysEntity.setCreateTime(DateUtil.date());
|
|
sysEntity.setCreateTime(DateUtil.date());
|
|
sysEntity.setEntityId("-1");
|
|
sysEntity.setEntityId("-1");
|
|
- log.info("待导入schema的kgId:{}",kgId);
|
|
|
|
|
|
+ log.info("待导入schema的kgId:{}", kgId);
|
|
log.info("待导入的图谱shcema数据 sysEntity:{}", JSON.toJSONString(sysEntity));
|
|
log.info("待导入的图谱shcema数据 sysEntity:{}", JSON.toJSONString(sysEntity));
|
|
SysEntityAll entityKg = createEntityKg(sysEntity);
|
|
SysEntityAll entityKg = createEntityKg(sysEntity);
|
|
// int insert = sysEntityMapper.insert(sysEntity);
|
|
// int insert = sysEntityMapper.insert(sysEntity);
|
|
@@ -801,6 +822,7 @@ public class SysKgServiceImpl extends ServiceImpl<SysKgMapper, SysKg> implements
|
|
}
|
|
}
|
|
return null;
|
|
return null;
|
|
}
|
|
}
|
|
|
|
+
|
|
@Override
|
|
@Override
|
|
public SysEntityInstance insOrUpdEnIce(SysEntityInstance sysEntityInstance) {
|
|
public SysEntityInstance insOrUpdEnIce(SysEntityInstance sysEntityInstance) {
|
|
log.info("******接口(insOrUpdEnIce)--->入参(sysEntityInstance):{}", JSON.toJSONString(sysEntityInstance));
|
|
log.info("******接口(insOrUpdEnIce)--->入参(sysEntityInstance):{}", JSON.toJSONString(sysEntityInstance));
|
|
@@ -892,8 +914,8 @@ public class SysKgServiceImpl extends ServiceImpl<SysKgMapper, SysKg> implements
|
|
List<SysEntityRelation> sysEntityRelations = sysEntityRelationMapper.selectList(new QueryWrapper<SysEntityRelation>()
|
|
List<SysEntityRelation> sysEntityRelations = sysEntityRelationMapper.selectList(new QueryWrapper<SysEntityRelation>()
|
|
.eq("start", sysEntityRelation.getStart())
|
|
.eq("start", sysEntityRelation.getStart())
|
|
.eq("end", sysEntityRelation.getEnd())
|
|
.eq("end", sysEntityRelation.getEnd())
|
|
- .eq("relation",sysEntityRelation.getRelation())
|
|
|
|
- .eq("kg_id",sysEntityRelation.getKgId())
|
|
|
|
|
|
+ .eq("relation", sysEntityRelation.getRelation())
|
|
|
|
+ .eq("kg_id", sysEntityRelation.getKgId())
|
|
);
|
|
);
|
|
if (sysEntityRelations.size() == 0) {
|
|
if (sysEntityRelations.size() == 0) {
|
|
if (sysEntityRelation.getId() != null && !"".equals(sysEntityRelation.getId())) {
|
|
if (sysEntityRelation.getId() != null && !"".equals(sysEntityRelation.getId())) {
|
|
@@ -904,6 +926,8 @@ public class SysKgServiceImpl extends ServiceImpl<SysKgMapper, SysKg> implements
|
|
sysEntityRelation.setCreateBy(String.valueOf(userId));
|
|
sysEntityRelation.setCreateBy(String.valueOf(userId));
|
|
sysEntityRelation.setCreateTime(new Date());
|
|
sysEntityRelation.setCreateTime(new Date());
|
|
sysEntityRelation.setUserId(userId);
|
|
sysEntityRelation.setUserId(userId);
|
|
|
|
+ // 区别(0算法抽取,1手动添加)
|
|
|
|
+ sysEntityRelation.setDifference(Hodgepodge.DIFFERENCE);
|
|
sysEntityRelationMapper.insert(sysEntityRelation);
|
|
sysEntityRelationMapper.insert(sysEntityRelation);
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|