NotePrompt.java extractAttributes类型转换handler变更为NotePromptExtractAttributesTypeHandler

topo_dev
DESKTOP-DDTUS3E\yaxin 8 months ago
parent 3808fd57df
commit 3b874e2d28

@ -4,10 +4,10 @@ import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.supervision.police.dto.NotePromptExtractAttributesDto;
import com.supervision.police.dto.TripleInfoDTO;
import com.supervision.police.handler.NotePromptExtractAttributesTypeHandler;
import lombok.Data;
import java.io.Serial;
@ -15,7 +15,7 @@ import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;
@TableName(value = "note_prompt",autoResultMap = true)
@TableName(value = "note_prompt", autoResultMap = true)
@Data
public class NotePrompt implements Serializable {
@ -83,7 +83,7 @@ public class NotePrompt implements Serializable {
*
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private LocalDateTime createTime;
/**
@ -96,33 +96,33 @@ public class NotePrompt implements Serializable {
*
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private LocalDateTime updateTime;
/**
*
*
*/
private String name;
/**
*
*
*/
private String caseType;
/**
*
*
*/
private String type;
/**
*
*
*/
@TableField(typeHandler = JacksonTypeHandler.class)
@TableField(typeHandler = NotePromptExtractAttributesTypeHandler.class)
private List<NotePromptExtractAttributesDto> extractAttributes;
/**
*
*
*/
private String evidenceCategoryId;

@ -0,0 +1,31 @@
package com.supervision.police.handler;
import com.baomidou.mybatisplus.extension.handlers.AbstractJsonTypeHandler;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.supervision.police.dto.NotePromptExtractAttributesDto;
import java.util.List;
public class NotePromptExtractAttributesTypeHandler extends AbstractJsonTypeHandler<List<NotePromptExtractAttributesDto>> {
private static final ObjectMapper objectMapper = new ObjectMapper();
@Override
protected List<NotePromptExtractAttributesDto> parse(String json) {
try {
return objectMapper.readValue(json, new TypeReference<List<NotePromptExtractAttributesDto>>() {
});
} catch (Exception e) {
throw new RuntimeException("Failed to parse JSON to List<NotePromptExtractAttributesDto>", e);
}
}
@Override
protected String toJson(List<NotePromptExtractAttributesDto> obj) {
try {
return objectMapper.writeValueAsString(obj);
} catch (Exception e) {
throw new RuntimeException("Failed to convert List<NotePromptExtractAttributesDto> to JSON", e);
}
}
}

@ -266,7 +266,7 @@ public class CaseEvidenceServiceImpl extends ServiceImpl<CaseEvidenceMapper, Cas
caseEvidence.setProcessStatus(EvidenceConstants.PROCESS_STATUS_SUCCESS);
updateById(caseEvidence);
} catch (Exception e) {
log.error("证据解析失败。更新证据处理状态为【处理失败】。");
log.error("证据解析失败。更新证据处理状态为【处理失败】。", e);
caseEvidence.setProcessStatus(EvidenceConstants.PROCESS_STATUS_FAILED);
updateById(caseEvidence);
} finally {

Loading…
Cancel
Save