优化三元组提取

topo_dev
liu
parent 7f05256946
commit bf4149758b

@ -57,7 +57,7 @@ public class NoteRecordDetailDTO {
/** /**
* *
*/ */
private Integer confessionMaterial; private String confessionMaterial;
/** /**
* *
@ -100,7 +100,7 @@ public class NoteRecordDetailDTO {
this.personId = noteRecordDTO.getCasePersonId(); this.personId = noteRecordDTO.getCasePersonId();
this.name = noteRecordDTO.getName(); this.name = noteRecordDTO.getName();
this.role = noteRecordDTO.getRole(); this.role = noteRecordDTO.getRole();
this.confessionMaterial = noteRecordDTO.getConfessionMaterial(); this.confessionMaterial = String.valueOf(noteRecordDTO.getConfessionMaterial());
this.lawAsker = noteRecordDTO.getLawAsker(); this.lawAsker = noteRecordDTO.getLawAsker();
this.confessionStartTime = noteRecordDTO.getConfessionStartTime(); this.confessionStartTime = noteRecordDTO.getConfessionStartTime();
this.confessionEndTime = noteRecordDTO.getConfessionEndTime(); this.confessionEndTime = noteRecordDTO.getConfessionEndTime();

@ -21,6 +21,7 @@ import com.supervision.minio.service.MinioService;
import com.supervision.neo4j.service.Neo4jService; import com.supervision.neo4j.service.Neo4jService;
import com.supervision.police.domain.*; import com.supervision.police.domain.*;
import com.supervision.police.dto.NoteRecordDTO; import com.supervision.police.dto.NoteRecordDTO;
import com.supervision.police.dto.NoteRecordFileDTO;
import com.supervision.police.vo.NoteRecordReqVO; import com.supervision.police.vo.NoteRecordReqVO;
import com.supervision.police.dto.NoteRecordDetailDTO; import com.supervision.police.dto.NoteRecordDetailDTO;
import com.supervision.police.mapper.NoteRecordSplitMapper; import com.supervision.police.mapper.NoteRecordSplitMapper;
@ -86,7 +87,7 @@ public class NoteRecordSplitServiceImpl extends ServiceImpl<NoteRecordSplitMappe
public String uploadRecords(NoteRecordReqVO records) throws IOException { public String uploadRecords(NoteRecordReqVO records) throws IOException {
int i; int i;
ModelCase modelCase = modelCaseService.getById(records.getCaseId()); ModelCase modelCase = modelCaseService.getById(records.getCaseId());
if (StringUtils.isEmpty(modelCase.getCaseNo())){ if (StringUtils.isEmpty(modelCase.getCaseNo())) {
throw new BusinessException("案件编号不能为空"); throw new BusinessException("案件编号不能为空");
} }
NoteRecord record = records.toNoteRecord(); NoteRecord record = records.toNoteRecord();
@ -111,7 +112,7 @@ public class NoteRecordSplitServiceImpl extends ServiceImpl<NoteRecordSplitMappe
} }
String context = WordReadUtil.readWord(inputStream); String context = WordReadUtil.readWord(inputStream);
List<QARecordNodeDTO> qaList = RecordRegexUtil.recordRegex(context, record.getName()); List<QARecordNodeDTO> qaList = RecordRegexUtil.recordRegex(context, record.getName());
log.info("拆分问答对:{}",qaList.size()); log.info("拆分问答对:{}", qaList.size());
List<NoteRecordSplit> splitList = new ArrayList<>(); List<NoteRecordSplit> splitList = new ArrayList<>();
for (QARecordNodeDTO qa : qaList) { for (QARecordNodeDTO qa : qaList) {
try { try {
@ -152,7 +153,7 @@ public class NoteRecordSplitServiceImpl extends ServiceImpl<NoteRecordSplitMappe
* @param recordId * @param recordId
* @return , true, , false * @return , true, , false
*/ */
private boolean saveRecordProcessTask(String caseId, String recordId,Integer splitSize) { private boolean saveRecordProcessTask(String caseId, String recordId, Integer splitSize) {
// 首先查询是否存在任务,如果不存在,就新建 // 首先查询是否存在任务,如果不存在,就新建
Optional<CaseTaskRecord> caseTaskRecordOpt = caseTaskRecordService.lambdaQuery() Optional<CaseTaskRecord> caseTaskRecordOpt = caseTaskRecordService.lambdaQuery()
.eq(CaseTaskRecord::getCaseId, caseId).eq(CaseTaskRecord::getRecordId, recordId).oneOpt(); .eq(CaseTaskRecord::getCaseId, caseId).eq(CaseTaskRecord::getRecordId, recordId).oneOpt();
@ -172,7 +173,7 @@ public class NoteRecordSplitServiceImpl extends ServiceImpl<NoteRecordSplitMappe
newCaseTaskRecord.setSubmitTime(LocalDateTime.now()); newCaseTaskRecord.setSubmitTime(LocalDateTime.now());
caseTaskRecordService.save(newCaseTaskRecord); caseTaskRecordService.save(newCaseTaskRecord);
return false; return false;
}else { } else {
// 如果存在,则校验时间是否已经超过1天,如果超过了1天还没有执行完毕,就重新提交这个任务 // 如果存在,则校验时间是否已经超过1天,如果超过了1天还没有执行完毕,就重新提交这个任务
CaseTaskRecord caseTaskRecord = caseTaskRecordOpt.get(); CaseTaskRecord caseTaskRecord = caseTaskRecordOpt.get();
// 如果未执行,则提交执行 // 如果未执行,则提交执行
@ -241,7 +242,7 @@ public class NoteRecordSplitServiceImpl extends ServiceImpl<NoteRecordSplitMappe
// 从key中获取noteRecordDetailDTO需要的数据 // 从key中获取noteRecordDetailDTO需要的数据
List<NoteRecordDetailDTO> noteRecordDetailDTOS = nameMap.get(name); List<NoteRecordDetailDTO> noteRecordDetailDTOS = nameMap.get(name);
NoteRecordDetailDTO first = CollUtil.getFirst(noteRecordDetailDTOS); NoteRecordDetailDTO first = CollUtil.getFirst(noteRecordDetailDTOS);
if (Objects.nonNull(first)){ if (Objects.nonNull(first)) {
noteRecordDetailDTO.setPersonId(first.getPersonId()); noteRecordDetailDTO.setPersonId(first.getPersonId());
noteRecordDetailDTO.setRole(first.getRole()); noteRecordDetailDTO.setRole(first.getRole());
noteRecordDetailDTO.setRoleName(caseRoleDicMap.get(first.getRole())); noteRecordDetailDTO.setRoleName(caseRoleDicMap.get(first.getRole()));
@ -251,6 +252,9 @@ public class NoteRecordSplitServiceImpl extends ServiceImpl<NoteRecordSplitMappe
int fileCount = 0; int fileCount = 0;
for (NoteRecordDetailDTO recordDetailDTO : noteRecordDetailDTOS) { for (NoteRecordDetailDTO recordDetailDTO : noteRecordDetailDTOS) {
fileCount = fileCount + recordDetailDTO.getFileList().size(); fileCount = fileCount + recordDetailDTO.getFileList().size();
// 获取文件的文件名称
Set<String> fileNameSet = recordDetailDTO.getFileList().stream().map(NoteRecordFileDTO::getFileName).collect(Collectors.toSet());
recordDetailDTO.setConfessionMaterial(CollUtil.join(fileNameSet, ";"));
CaseTaskRecord caseTaskRecord = taskRecordMap.get(recordDetailDTO.getId()); CaseTaskRecord caseTaskRecord = taskRecordMap.get(recordDetailDTO.getId());
if (ObjectUtil.isNotEmpty(caseTaskRecord)) { if (ObjectUtil.isNotEmpty(caseTaskRecord)) {
if (caseTaskRecord.getStatus() == 2) { if (caseTaskRecord.getStatus() == 2) {
@ -271,7 +275,7 @@ public class NoteRecordSplitServiceImpl extends ServiceImpl<NoteRecordSplitMappe
} }
noteRecordDetailDTO.setChildren(noteRecordDetailDTOS); noteRecordDetailDTO.setChildren(noteRecordDetailDTOS);
// 统计所有children的文件数量 // 统计所有children的文件数量
noteRecordDetailDTO.setConfessionMaterial(fileCount); noteRecordDetailDTO.setConfessionMaterial(String.valueOf(fileCount));
res.add(noteRecordDetailDTO); res.add(noteRecordDetailDTO);
} }
List<NoteRecordDetailDTO> pager = ListUtils.Pager(size, page, res); List<NoteRecordDetailDTO> pager = ListUtils.Pager(size, page, res);

Loading…
Cancel
Save