From cbc2e8325ec774440cb5e54b9fc67e28186a0882 Mon Sep 17 00:00:00 2001 From: xueqingkun Date: Mon, 11 Nov 2024 15:56:14 +0800 Subject: [PATCH] =?UTF-8?q?1.=20=E4=BF=AE=E6=AD=A3domain=E4=B8=AD=20create?= =?UTF-8?q?Time=20=E4=B8=AD=E7=9A=84@TableField(fill=20=3D=20FieldFill.INS?= =?UTF-8?q?ERT)=E6=B3=A8=E8=A7=A3=202.=20=E6=A1=88=E4=BB=B6=E7=AC=94?= =?UTF-8?q?=E5=BD=95=E5=88=97=E8=A1=A8=E6=B7=BB=E5=8A=A0=E6=8E=92=E5=BA=8F?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=203.=20=E6=A1=88=E4=BB=B6=E8=AF=81=E6=8D=AE?= =?UTF-8?q?=E6=8F=90=E5=8F=96=E5=87=BA=E7=9A=84=E5=B1=9E=E6=80=A7=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E6=A0=BC=E5=BC=8F=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../police/controller/RecordController.java | 2 +- .../police/domain/CaseEvidence.java | 2 +- .../police/domain/EvidenceCategory.java | 2 +- .../police/domain/FileOcrProcess.java | 2 +- .../domain/ModelIndexAtomicRelation.java | 2 +- .../police/domain/ModelIndexResult.java | 2 +- .../police/domain/ModelRecordType.java | 2 +- .../supervision/police/domain/NotePrompt.java | 2 +- .../supervision/police/domain/NoteRecord.java | 2 +- .../police/domain/NoteRecordSplit.java | 2 +- .../supervision/police/domain/SystemMenu.java | 2 +- .../supervision/police/domain/SystemRole.java | 2 +- .../police/domain/SystemRoleMenuRelation.java | 2 +- .../supervision/police/domain/SystemUser.java | 2 +- .../police/domain/SystemUserRoleRelation.java | 2 +- .../supervision/police/domain/TripleInfo.java | 2 +- .../supervision/police/dto/ModelCaseDTO.java | 4 +- .../police/dto/NoteRecordDetailDTO.java | 5 +++ .../service/NoteRecordSplitService.java | 2 +- .../service/impl/CaseEvidenceServiceImpl.java | 45 ++++++++++++++++++- .../impl/NoteRecordSplitServiceImpl.java | 22 +++++++-- .../police/vo/NoteRecordReqVO.java | 7 +++ 22 files changed, 95 insertions(+), 22 deletions(-) diff --git a/src/main/java/com/supervision/police/controller/RecordController.java b/src/main/java/com/supervision/police/controller/RecordController.java index d1207a6..f10e6d5 100644 --- a/src/main/java/com/supervision/police/controller/RecordController.java +++ b/src/main/java/com/supervision/police/controller/RecordController.java @@ -134,7 +134,7 @@ public class RecordController { } @PostMapping("/queryRecordList") - public R> queryRecordList(@RequestBody NoteRecord noteRecord, + public R> queryRecordList(@RequestBody NoteRecordReqVO noteRecord, @RequestParam(required = false, defaultValue = "1") Integer page, @RequestParam(required = false, defaultValue = "20") Integer size) { return R.ok(noteRecordSplitService.queryRecordList(noteRecord, page, size)); diff --git a/src/main/java/com/supervision/police/domain/CaseEvidence.java b/src/main/java/com/supervision/police/domain/CaseEvidence.java index ef1142f..72b6c10 100644 --- a/src/main/java/com/supervision/police/domain/CaseEvidence.java +++ b/src/main/java/com/supervision/police/domain/CaseEvidence.java @@ -88,7 +88,7 @@ public class CaseEvidence implements Serializable { /** * 创建时间 */ - @TableField(fill = FieldFill.INSERT_UPDATE) + @TableField(fill = FieldFill.INSERT) @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") private LocalDateTime createTime; diff --git a/src/main/java/com/supervision/police/domain/EvidenceCategory.java b/src/main/java/com/supervision/police/domain/EvidenceCategory.java index 6ac6321..82d32f9 100644 --- a/src/main/java/com/supervision/police/domain/EvidenceCategory.java +++ b/src/main/java/com/supervision/police/domain/EvidenceCategory.java @@ -57,7 +57,7 @@ public class EvidenceCategory implements Serializable { /** * 创建时间 */ - @TableField(fill = FieldFill.INSERT_UPDATE) + @TableField(fill = FieldFill.INSERT) private LocalDateTime createTime; /** diff --git a/src/main/java/com/supervision/police/domain/FileOcrProcess.java b/src/main/java/com/supervision/police/domain/FileOcrProcess.java index d5d686a..aab6f18 100644 --- a/src/main/java/com/supervision/police/domain/FileOcrProcess.java +++ b/src/main/java/com/supervision/police/domain/FileOcrProcess.java @@ -55,7 +55,7 @@ public class FileOcrProcess implements Serializable { /** * 创建时间 */ - @TableField(fill = FieldFill.INSERT_UPDATE) + @TableField(fill = FieldFill.INSERT) @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") private LocalDateTime createTime; diff --git a/src/main/java/com/supervision/police/domain/ModelIndexAtomicRelation.java b/src/main/java/com/supervision/police/domain/ModelIndexAtomicRelation.java index 15010de..7f45d15 100644 --- a/src/main/java/com/supervision/police/domain/ModelIndexAtomicRelation.java +++ b/src/main/java/com/supervision/police/domain/ModelIndexAtomicRelation.java @@ -39,7 +39,7 @@ public class ModelIndexAtomicRelation implements Serializable { /** * 创建时间 */ - @TableField(fill = FieldFill.INSERT_UPDATE) + @TableField(fill = FieldFill.INSERT) @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") private LocalDateTime createTime; diff --git a/src/main/java/com/supervision/police/domain/ModelIndexResult.java b/src/main/java/com/supervision/police/domain/ModelIndexResult.java index ed4593c..fe6d1ff 100644 --- a/src/main/java/com/supervision/police/domain/ModelIndexResult.java +++ b/src/main/java/com/supervision/police/domain/ModelIndexResult.java @@ -53,7 +53,7 @@ public class ModelIndexResult implements Serializable { /** * 创建时间 */ - @TableField(fill = FieldFill.INSERT_UPDATE) + @TableField(fill = FieldFill.INSERT) @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") private LocalDateTime createTime; diff --git a/src/main/java/com/supervision/police/domain/ModelRecordType.java b/src/main/java/com/supervision/police/domain/ModelRecordType.java index 048ae8b..2a74d98 100644 --- a/src/main/java/com/supervision/police/domain/ModelRecordType.java +++ b/src/main/java/com/supervision/police/domain/ModelRecordType.java @@ -54,7 +54,7 @@ public class ModelRecordType implements Serializable { /** * 创建时间 */ - @TableField(fill = FieldFill.INSERT_UPDATE) + @TableField(fill = FieldFill.INSERT) @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") private LocalDateTime createTime; diff --git a/src/main/java/com/supervision/police/domain/NotePrompt.java b/src/main/java/com/supervision/police/domain/NotePrompt.java index 1efce57..ba1ce2a 100644 --- a/src/main/java/com/supervision/police/domain/NotePrompt.java +++ b/src/main/java/com/supervision/police/domain/NotePrompt.java @@ -83,7 +83,7 @@ public class NotePrompt implements Serializable { /** * 创建时间 */ - @TableField(fill = FieldFill.INSERT_UPDATE) + @TableField(fill = FieldFill.INSERT) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private LocalDateTime createTime; diff --git a/src/main/java/com/supervision/police/domain/NoteRecord.java b/src/main/java/com/supervision/police/domain/NoteRecord.java index 54f6067..2952bc7 100644 --- a/src/main/java/com/supervision/police/domain/NoteRecord.java +++ b/src/main/java/com/supervision/police/domain/NoteRecord.java @@ -110,7 +110,7 @@ public class NoteRecord implements Serializable { /** * 创建时间 */ - @TableField(fill = FieldFill.INSERT_UPDATE) + @TableField(fill = FieldFill.INSERT) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime createTime; diff --git a/src/main/java/com/supervision/police/domain/NoteRecordSplit.java b/src/main/java/com/supervision/police/domain/NoteRecordSplit.java index 966585b..374de62 100644 --- a/src/main/java/com/supervision/police/domain/NoteRecordSplit.java +++ b/src/main/java/com/supervision/police/domain/NoteRecordSplit.java @@ -66,7 +66,7 @@ public class NoteRecordSplit implements Serializable { /** * 创建时间 */ - @TableField(fill = FieldFill.INSERT_UPDATE) + @TableField(fill = FieldFill.INSERT) @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") private LocalDateTime createTime; diff --git a/src/main/java/com/supervision/police/domain/SystemMenu.java b/src/main/java/com/supervision/police/domain/SystemMenu.java index 283b5a6..acf1142 100644 --- a/src/main/java/com/supervision/police/domain/SystemMenu.java +++ b/src/main/java/com/supervision/police/domain/SystemMenu.java @@ -50,7 +50,7 @@ public class SystemMenu implements Serializable { /** * 创建时间 */ - @TableField(fill = FieldFill.INSERT_UPDATE) + @TableField(fill = FieldFill.INSERT) private LocalDateTime createTime; /** diff --git a/src/main/java/com/supervision/police/domain/SystemRole.java b/src/main/java/com/supervision/police/domain/SystemRole.java index 511943d..034a0c4 100644 --- a/src/main/java/com/supervision/police/domain/SystemRole.java +++ b/src/main/java/com/supervision/police/domain/SystemRole.java @@ -40,7 +40,7 @@ public class SystemRole implements Serializable { /** * 创建时间 */ - @TableField(fill = FieldFill.INSERT_UPDATE) + @TableField(fill = FieldFill.INSERT) private LocalDateTime createTime; /** diff --git a/src/main/java/com/supervision/police/domain/SystemRoleMenuRelation.java b/src/main/java/com/supervision/police/domain/SystemRoleMenuRelation.java index eaaaee5..1a3bc6d 100644 --- a/src/main/java/com/supervision/police/domain/SystemRoleMenuRelation.java +++ b/src/main/java/com/supervision/police/domain/SystemRoleMenuRelation.java @@ -36,7 +36,7 @@ public class SystemRoleMenuRelation implements Serializable { /** * 创建时间 */ - @TableField(fill = FieldFill.INSERT_UPDATE) + @TableField(fill = FieldFill.INSERT) private LocalDateTime createTime; /** diff --git a/src/main/java/com/supervision/police/domain/SystemUser.java b/src/main/java/com/supervision/police/domain/SystemUser.java index c0b31c3..97c204b 100644 --- a/src/main/java/com/supervision/police/domain/SystemUser.java +++ b/src/main/java/com/supervision/police/domain/SystemUser.java @@ -70,7 +70,7 @@ public class SystemUser implements Serializable { /** * 创建时间 */ - @TableField(fill = FieldFill.INSERT_UPDATE) + @TableField(fill = FieldFill.INSERT) private LocalDateTime createTime; /** diff --git a/src/main/java/com/supervision/police/domain/SystemUserRoleRelation.java b/src/main/java/com/supervision/police/domain/SystemUserRoleRelation.java index f66b19b..424f60f 100644 --- a/src/main/java/com/supervision/police/domain/SystemUserRoleRelation.java +++ b/src/main/java/com/supervision/police/domain/SystemUserRoleRelation.java @@ -40,7 +40,7 @@ public class SystemUserRoleRelation implements Serializable { /** * 创建时间 */ - @TableField(fill = FieldFill.INSERT_UPDATE) + @TableField(fill = FieldFill.INSERT) private LocalDateTime createTime; /** diff --git a/src/main/java/com/supervision/police/domain/TripleInfo.java b/src/main/java/com/supervision/police/domain/TripleInfo.java index 919d162..5d65a8c 100644 --- a/src/main/java/com/supervision/police/domain/TripleInfo.java +++ b/src/main/java/com/supervision/police/domain/TripleInfo.java @@ -90,7 +90,7 @@ public class TripleInfo implements Serializable { /** * 创建时间 */ - @TableField(fill = FieldFill.INSERT_UPDATE) + @TableField(fill = FieldFill.INSERT) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private LocalDateTime createTime; diff --git a/src/main/java/com/supervision/police/dto/ModelCaseDTO.java b/src/main/java/com/supervision/police/dto/ModelCaseDTO.java index ef62228..9c78ef1 100644 --- a/src/main/java/com/supervision/police/dto/ModelCaseDTO.java +++ b/src/main/java/com/supervision/police/dto/ModelCaseDTO.java @@ -105,13 +105,15 @@ public class ModelCaseDTO { @Schema(description = "创建时间") @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @TableField(fill = FieldFill.INSERT) private LocalDateTime createTime; - @TableField(fill = FieldFill.INSERT_UPDATE) + private String updateUserId; @Schema(description = "更新时间") @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @TableField(fill = FieldFill.INSERT_UPDATE) private LocalDateTime updateTime; @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") diff --git a/src/main/java/com/supervision/police/dto/NoteRecordDetailDTO.java b/src/main/java/com/supervision/police/dto/NoteRecordDetailDTO.java index 8975db4..acd3c34 100644 --- a/src/main/java/com/supervision/police/dto/NoteRecordDetailDTO.java +++ b/src/main/java/com/supervision/police/dto/NoteRecordDetailDTO.java @@ -95,6 +95,8 @@ public class NoteRecordDetailDTO { */ private String percentage; + private Double rowPercentage; + /** * 提示词更新标记,用来判断是否需要重新提取三元组 */ @@ -169,6 +171,9 @@ public class NoteRecordDetailDTO { } } } + if (StrUtil.isNotEmpty(this.percentage)){ + this.rowPercentage = Double.parseDouble(this.percentage.replace("%", "")); + } } public void setRecordTypeValue(List recordFileDTOS){ diff --git a/src/main/java/com/supervision/police/service/NoteRecordSplitService.java b/src/main/java/com/supervision/police/service/NoteRecordSplitService.java index c5b758f..9acccee 100644 --- a/src/main/java/com/supervision/police/service/NoteRecordSplitService.java +++ b/src/main/java/com/supervision/police/service/NoteRecordSplitService.java @@ -29,7 +29,7 @@ public interface NoteRecordSplitService extends IService { NoteRecordSplit saveRecordSplit(NoteRecord record, String fileName, String question, String answer); List batchSaveRecordSplit(NoteRecord record, String fileId); - Map queryRecordList(NoteRecord noteRecord, Integer page, Integer size); + Map queryRecordList(NoteRecordReqVO noteRecord, Integer page, Integer size); String redoExtract(NoteRecordReqVO records) throws IOException; } diff --git a/src/main/java/com/supervision/police/service/impl/CaseEvidenceServiceImpl.java b/src/main/java/com/supervision/police/service/impl/CaseEvidenceServiceImpl.java index e09cabd..9399fe5 100644 --- a/src/main/java/com/supervision/police/service/impl/CaseEvidenceServiceImpl.java +++ b/src/main/java/com/supervision/police/service/impl/CaseEvidenceServiceImpl.java @@ -5,6 +5,7 @@ import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.TimeInterval; import cn.hutool.core.lang.Assert; +import cn.hutool.core.util.NumberUtil; import cn.hutool.core.util.StrUtil; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.incrementer.DefaultIdentifierGenerator; @@ -13,6 +14,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.supervision.common.constant.EvidenceConstants; +import com.supervision.common.constant.IndexRuleConstants; import com.supervision.minio.domain.MinioFile; import com.supervision.minio.service.MinioService; import com.supervision.police.domain.*; @@ -31,6 +33,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; +import java.text.SimpleDateFormat; import java.time.LocalDateTime; import java.util.*; import java.util.function.Function; @@ -325,7 +328,13 @@ public class CaseEvidenceServiceImpl extends ServiceImpl llmExtractDtos = llmExtractService.extractAttribute(Collections.singletonList(llmExtractDto)); if (!llmExtractDtos.isEmpty()) { - caseEvidence.setProperty(llmExtractDtos.get(0).getExtractAttributes()); + List extractAttributes = llmExtractDtos.get(0).getExtractAttributes() + .stream().filter(Objects::nonNull).peek(extractAttribute -> { + if (!checkExtractAttributes(extractAttribute)) { + extractAttribute.setAttrValue(null); + } + }).toList(); + caseEvidence.setProperty(extractAttributes); } log.info("属性提取完成。更新证据处理状态为【属性提取完成】。属性:【{}】。耗时:【{}】", caseEvidence.getProperty(), System.currentTimeMillis() - attrStart); caseEvidence.setProcessStatus(EvidenceConstants.PROCESS_STATUS_ATTR_EXTRACT_OK); @@ -345,6 +354,31 @@ public class CaseEvidenceServiceImpl extends ServiceImpl merged = mergeExtractAttributes(caseEvidence.getProperty(), categoryIdMapExtractAttributes.get(categoryId)); + + if (null != merged){ + merged = merged.stream().filter(Objects::nonNull).peek(e -> { + if (!checkExtractAttributes(e)) { + e.setAttrValue(null); + } + }).toList(); + } + caseEvidence.setProperty(merged); } diff --git a/src/main/java/com/supervision/police/service/impl/NoteRecordSplitServiceImpl.java b/src/main/java/com/supervision/police/service/impl/NoteRecordSplitServiceImpl.java index 6c1fea1..856bddf 100644 --- a/src/main/java/com/supervision/police/service/impl/NoteRecordSplitServiceImpl.java +++ b/src/main/java/com/supervision/police/service/impl/NoteRecordSplitServiceImpl.java @@ -283,9 +283,9 @@ public class NoteRecordSplitServiceImpl extends ServiceImpl queryRecordList(NoteRecord noteRecord, Integer page, Integer size) { + public Map queryRecordList(NoteRecordReqVO noteRecord, Integer page, Integer size) { - List noteRecordDTOList = noteRecordService.selectNoteRecordDTOList(noteRecord); + List noteRecordDTOList = noteRecordService.selectNoteRecordDTOList(noteRecord.toNoteRecord()); // 查询关联文件数据 List fileIdList = noteRecordDTOList.stream().map(NoteRecordDTO::getFileIds).filter(StringUtils::isNotEmpty) @@ -319,7 +319,23 @@ public class NoteRecordSplitServiceImpl extends ServiceImpl comparing = Comparator.comparing(NoteRecordDetailDTO::getSerialNumber); + /*if (StrUtil.equals(noteRecord.getOrderBy(),"percentage")){ + comparing = Comparator.comparing(NoteRecordDetailDTO::getRowPercentage); + if (StrUtil.equalsIgnoreCase(noteRecord.getOrder(),"desc")){ + comparing = comparing.reversed(); + } + } + if (StrUtil.equals(noteRecord.getOrderBy(),"name")){ + comparing = Comparator.comparing(NoteRecordDetailDTO::getName); + if (StrUtil.equalsIgnoreCase(noteRecord.getOrder(),"desc")){ + comparing = comparing.reversed(); + } + }*/ + noteRecordDetailDTOList.sort(comparing); + List pager = ListUtils.Pager(size, page, noteRecordDetailDTOList); return IPages.buildDataMap(pager, noteRecordDetailDTOList.size()); } diff --git a/src/main/java/com/supervision/police/vo/NoteRecordReqVO.java b/src/main/java/com/supervision/police/vo/NoteRecordReqVO.java index bea46d8..19d0e7b 100644 --- a/src/main/java/com/supervision/police/vo/NoteRecordReqVO.java +++ b/src/main/java/com/supervision/police/vo/NoteRecordReqVO.java @@ -61,6 +61,13 @@ public class NoteRecordReqVO { @Schema(description = "证据状态 1:暂存 2:核实 3:提交") private Integer imgRecordStatus; + + @Schema(description = "排序字段") + private String orderBy; + + @Schema(description = "排序方式 desc/asc") + private String order; + public NoteRecord toNoteRecord(){ NoteRecord noteRecord = new NoteRecord(); noteRecord.setId(id);