添加案件证据管理相关接口

topo_dev
xueqingkun 10 months ago
parent c7a39b5ff5
commit ee75cb48d4

@ -61,10 +61,6 @@ public class R<T> implements Serializable {
return restResult(data, FAIL, null); return restResult(data, FAIL, null);
} }
public static <T> R<T> fail(T data, String msg) {
return restResult(data, FAIL, msg);
}
public static <T> R<T> fail(int code, String msg) { public static <T> R<T> fail(int code, String msg) {
return restResult(null, code, msg); return restResult(null, code, msg);
} }

@ -33,6 +33,8 @@ public enum ResultStatusEnum {
PARAMETER_CANNOT_BE_EMPTY(504, "参数不能为空,操作失败!"), PARAMETER_CANNOT_BE_EMPTY(504, "参数不能为空,操作失败!"),
NO_TEMP_UPLOADFILEPATH(505,"未配置文件上传临时存储路径"), NO_TEMP_UPLOADFILEPATH(505,"未配置文件上传临时存储路径"),
USER_DOES_NOT_EXIST(507, "用户不存在,操作失败!"), USER_DOES_NOT_EXIST(507, "用户不存在,操作失败!"),
ILLEGAL_ARGUMENT(508, "参数校验失败!"),
IMPORT_COMPANY_FORMAT_ERROR(521,"Excel表格格式错误"), IMPORT_COMPANY_FORMAT_ERROR(521,"Excel表格格式错误"),
IMPORT_COMPANY_FAIL(522,"部分数据导入失败"), IMPORT_COMPANY_FAIL(522,"部分数据导入失败"),
INSERT_FAIL(600,"新增失败"), INSERT_FAIL(600,"新增失败"),

@ -3,6 +3,7 @@ package com.supervision.config;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import org.apache.ibatis.reflection.MetaObject; import org.apache.ibatis.reflection.MetaObject;
import java.time.LocalDateTime;
import java.util.Date; import java.util.Date;
/** /**
@ -14,13 +15,13 @@ public class MyMetaObjectHandler implements MetaObjectHandler {
@Override @Override
public void insertFill(MetaObject metaObject) { public void insertFill(MetaObject metaObject) {
this.setFieldValByName("createTime", new Date(), metaObject); this.setFieldValByName("createTime", LocalDateTime.now(), metaObject);
this.setFieldValByName("updateTime", new Date(), metaObject); this.setFieldValByName("updateTime", LocalDateTime.now(), metaObject);
} }
@Override @Override
public void updateFill(MetaObject metaObject) { public void updateFill(MetaObject metaObject) {
this.setFieldValByName("updateTime", new Date(), metaObject); this.setFieldValByName("updateTime", LocalDateTime.now(), metaObject);
} }
} }

@ -0,0 +1,76 @@
package com.supervision.config;
import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONUtil;
import com.supervision.common.domain.R;
import com.supervision.common.enums.ResultStatusEnum;
import lombok.extern.slf4j.Slf4j;
import org.springframework.core.MethodParameter;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.http.converter.HttpMessageConverter;
import org.springframework.http.server.ServerHttpRequest;
import org.springframework.http.server.ServerHttpResponse;
import org.springframework.lang.Nullable;
import org.springframework.validation.BindException;
import org.springframework.web.bind.MethodArgumentNotValidException;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.RestControllerAdvice;
import org.springframework.web.servlet.mvc.method.annotation.ResponseBodyAdvice;
import java.util.Objects;
import java.util.stream.Collectors;
/**
*
*
* @author wb
* @date 2022/3/10 13:24
*/
@Slf4j
@RestControllerAdvice(annotations = RestController.class, basePackages = {"com.supervision.**.controller"})
public class ResponseConfig implements ResponseBodyAdvice<Object> {
@Override
public boolean supports(@Nullable MethodParameter methodParameter,
@Nullable Class<? extends HttpMessageConverter<?>> aClass) {
assert methodParameter != null;
String lowerCase = methodParameter.getDeclaringClass().getName().toLowerCase();
log.info(lowerCase);
if (lowerCase.contains("swagger") || lowerCase.contains("springdoc")) {
return false;
} else {
log.info("--------{}---------", lowerCase);
return true;
}
}
@Override
@SuppressWarnings("all")
public Object beforeBodyWrite(Object o, @Nullable MethodParameter methodParameter, @Nullable MediaType mediaType,
@Nullable Class<? extends HttpMessageConverter<?>> aClass, @Nullable ServerHttpRequest serverHttpRequest,
@Nullable ServerHttpResponse serverHttpResponse) {
return o;
}
/**
*
* @param exception
* @return
*/
@ExceptionHandler(IllegalArgumentException.class)
public R<?> manualValidationExceptionResponse(IllegalArgumentException exception) {
log.error("=========手动校验参数异常=========>>>");
log.error(exception.getMessage(), exception);
log.error("<<<=========手动校验参数异常=========");
return R.fail(ResultStatusEnum.ILLEGAL_ARGUMENT,exception.getMessage());
}
}

@ -1,8 +1,9 @@
package com.supervision.police.controller; package com.supervision.police.controller;
import com.supervision.common.domain.R; import com.supervision.common.domain.R;
import com.supervision.police.dto.CaseEvidenceDetailDTO;
import com.supervision.police.service.CaseEvidenceService; import com.supervision.police.service.CaseEvidenceService;
import com.supervision.police.vo.CaseEvidenceReqVo; import com.supervision.police.dto.CaseEvidenceDTO;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
@ -10,13 +11,15 @@ import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.List;
/** /**
* *
*/ */
@Slf4j @Slf4j
@RestController @RestController
@Tag(name = "案件证据") @Tag(name = "案件证据")
@RequiredArgsConstructor @RequiredArgsConstructor
@RequestMapping("/caseEvidence") @RequestMapping("/caseEvidence")
public class CaseEvidenceController { public class CaseEvidenceController {
@ -25,15 +28,15 @@ public class CaseEvidenceController {
@Operation(summary = "保存案件证据信息") @Operation(summary = "保存案件证据信息")
@PostMapping("/saveEvidence") @PostMapping("/saveEvidence")
public R<String> saveEvidence(@RequestBody CaseEvidenceReqVo reqVO) { public R<String> saveEvidence(@RequestBody CaseEvidenceDTO caseEvidenceDTO) {
String evidenceId = caseEvidenceService.saveEvidence(reqVO); String evidenceId = caseEvidenceService.saveEvidence(caseEvidenceDTO);
return R.ok(evidenceId); return R.ok(evidenceId);
} }
@Operation(summary = "更新案件证据信息") @Operation(summary = "更新案件证据信息")
@PostMapping("/updateEvidence") @PostMapping("/updateEvidence")
public R<String> updateEvidence(@RequestBody CaseEvidenceReqVo reqVO) { public R<String> updateEvidence(@RequestBody CaseEvidenceDTO caseEvidenceDTO) {
String evidenceId = caseEvidenceService.updateEvidence(reqVO); String evidenceId = caseEvidenceService.updateEvidence(caseEvidenceDTO);
return R.ok(evidenceId); return R.ok(evidenceId);
} }
@ -44,9 +47,16 @@ public class CaseEvidenceController {
return R.ok(success); return R.ok(success);
} }
@GetMapping("/queryEvidenceDetail")
public R<CaseEvidenceDetailDTO> queryEvidenceDetail(@RequestParam @Parameter(name = "evidenceId",description = "证据id") String evidenceId) {
CaseEvidenceDetailDTO caseEvidenceDetailDTO = caseEvidenceService.queryEvidenceDetail(evidenceId);
return R.ok(caseEvidenceDetailDTO);
}
@Operation(summary = "查询案件证据信息列表") @Operation(summary = "查询案件证据信息列表")
@GetMapping("/list") @GetMapping("/list")
public void queryEvidenceList(@RequestParam @Parameter(name = "caseId",description = "案件id") String caseId) { public R<List<CaseEvidenceDetailDTO>> queryEvidenceList(@RequestParam @Parameter(name = "caseId",description = "案件id") String caseId) {
caseEvidenceService.queryEvidenceList(caseId); List<CaseEvidenceDetailDTO> caseEvidenceDetailDTOS = caseEvidenceService.queryEvidenceList(caseId);
return R.ok(caseEvidenceDetailDTOS);
} }
} }

@ -2,6 +2,9 @@ package com.supervision.police.daoService;
import com.supervision.police.domain.CaseEvidence; import com.supervision.police.domain.CaseEvidence;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.supervision.police.dto.CaseEvidenceDetailDTO;
import java.util.List;
/** /**
* @author Administrator * @author Administrator
@ -10,4 +13,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/ */
public interface CaseEvidenceDaoService extends IService<CaseEvidence> { public interface CaseEvidenceDaoService extends IService<CaseEvidence> {
List<CaseEvidenceDetailDTO> queryEvidenceList(String caseId);
CaseEvidenceDetailDTO queryEvidenceDetail(String evidenceId);
} }

@ -3,9 +3,12 @@ package com.supervision.police.daoService.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.supervision.police.domain.CaseEvidence; import com.supervision.police.domain.CaseEvidence;
import com.supervision.police.daoService.CaseEvidenceDaoService; import com.supervision.police.daoService.CaseEvidenceDaoService;
import com.supervision.police.dto.CaseEvidenceDetailDTO;
import com.supervision.police.mapper.CaseEvidenceMapper; import com.supervision.police.mapper.CaseEvidenceMapper;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
/** /**
* @author Administrator * @author Administrator
* @description case_evidence()Service * @description case_evidence()Service
@ -15,6 +18,15 @@ import org.springframework.stereotype.Service;
public class CaseEvidenceServiceDaoImpl extends ServiceImpl<CaseEvidenceMapper, CaseEvidence> public class CaseEvidenceServiceDaoImpl extends ServiceImpl<CaseEvidenceMapper, CaseEvidence>
implements CaseEvidenceDaoService { implements CaseEvidenceDaoService {
@Override
public List<CaseEvidenceDetailDTO> queryEvidenceList(String caseId) {
return super.getBaseMapper().queryEvidenceList(caseId);
}
@Override
public CaseEvidenceDetailDTO queryEvidenceDetail(String evidenceId) {
return super.getBaseMapper().queryEvidenceDetail(evidenceId);
}
} }

@ -1,10 +1,13 @@
package com.supervision.police.domain; package com.supervision.police.domain;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.time.LocalDateTime;
/** /**
* (CasePerson) * (CasePerson)
@ -39,6 +42,30 @@ public class CasePerson implements Serializable {
*/ */
private String roleCode; private String roleCode;
/**
* ID
*/
private String createUserId;
/**
*
*/
@TableField(fill = FieldFill.INSERT)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime createTime;
/**
*
*/
private String updateUserId;
/**
*
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime updateTime;
/** /**
* *
*/ */

@ -5,6 +5,7 @@ import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
@ -66,25 +67,35 @@ public class ComDictionary implements Serializable {
private String creator; private String creator;
/** /**
* *
*/ */
@TableField(fill = FieldFill.INSERT_UPDATE) private String updater;
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date updateTime; @TableField(exist = false)
private List<ComDictionary> child;
/**
* ID
*/
private String createUserId;
/** /**
* *
*/ */
@TableField(fill = FieldFill.INSERT) @TableField(fill = FieldFill.INSERT)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date createTime; private LocalDateTime createTime;
/** /**
* *
*/ */
private String updater; private String updateUserId;
@TableField(exist = false) /**
private List<ComDictionary> child; *
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime updateTime;
} }

@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable; import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date; import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
@ -43,7 +44,7 @@ public class EvidenceFile implements Serializable {
*/ */
@TableField(fill = FieldFill.INSERT) @TableField(fill = FieldFill.INSERT)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date createTime; private LocalDateTime createTime;
/** /**
* *
@ -55,7 +56,7 @@ public class EvidenceFile implements Serializable {
*/ */
@TableField(fill = FieldFill.INSERT_UPDATE) @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 Date updateTime; private LocalDateTime updateTime;
@TableField(exist = false) @TableField(exist = false)
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;

@ -1,5 +1,6 @@
package com.supervision.police.domain; package com.supervision.police.domain;
import java.time.LocalDateTime;
import java.util.Date; import java.util.Date;
import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.FieldFill;
@ -74,32 +75,45 @@ public class ModelAtomicIndex implements Serializable {
*/ */
private String prompt; private String prompt;
/**
*
*/
@TableField(fill = FieldFill.INSERT)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date createTime;
/**
*
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date updateTime;
@TableField(exist = false) @TableField(exist = false)
@JsonFormat(pattern="yyyy-MM-dd",timezone = "GMT+8") @JsonFormat(pattern="yyyy-MM-dd",timezone = "GMT+8")
private Date updateStartTime; private LocalDateTime updateStartTime;
@TableField(exist = false) @TableField(exist = false)
@JsonFormat(pattern="yyyy-MM-dd",timezone = "GMT+8") @JsonFormat(pattern="yyyy-MM-dd",timezone = "GMT+8")
private Date updateEndTime; private LocalDateTime updateEndTime;
/** /**
* *
*/ */
private String dataStatus; private String dataStatus;
/**
* ID
*/
private String createUserId;
/**
*
*/
@TableField(fill = FieldFill.INSERT)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime createTime;
/**
*
*/
private String updateUserId;
/**
*
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime updateTime;
} }

@ -1,5 +1,6 @@
package com.supervision.police.domain; package com.supervision.police.domain;
import java.time.LocalDateTime;
import java.util.Date; import java.util.Date;
import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.FieldFill;
@ -48,12 +49,29 @@ public class ModelAtomicResult implements Serializable {
*/ */
private String recordsId; private String recordsId;
/**
* ID
*/
private String createUserId;
/** /**
* *
*/ */
@TableField(fill = FieldFill.INSERT) @TableField(fill = FieldFill.INSERT)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date createTime; private LocalDateTime createTime;
/**
*
*/
private String updateUserId;
/**
*
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime updateTime;
} }

@ -1,5 +1,6 @@
package com.supervision.police.domain; package com.supervision.police.domain;
import java.time.LocalDateTime;
import java.util.Date; import java.util.Date;
import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.FieldFill;
@ -96,25 +97,14 @@ public class ModelCase implements Serializable {
*/ */
private Integer indexNum; private Integer indexNum;
/**
*
*/
@TableField(fill = FieldFill.INSERT)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date createTime;
/**
*
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date updateTime;
@TableField(exist=false) @TableField(exist=false)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date updateStartTime; private LocalDateTime updateStartTime;
@TableField(exist=false) @TableField(exist=false)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date updateEndTime; private LocalDateTime updateEndTime;
/** /**
* *
@ -126,5 +116,30 @@ public class ModelCase implements Serializable {
*/ */
private String caseNo; private String caseNo;
/**
* ID
*/
private String createUserId;
/**
*
*/
@TableField(fill = FieldFill.INSERT)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime createTime;
/**
*
*/
private String updateUserId;
/**
*
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime updateTime;
} }

@ -1,5 +1,6 @@
package com.supervision.police.domain; package com.supervision.police.domain;
import java.time.LocalDateTime;
import java.util.Date; import java.util.Date;
import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.FieldFill;
@ -69,30 +70,45 @@ public class ModelIndex implements Serializable {
*/ */
private String judgeLogic; private String judgeLogic;
@TableField(exist = false)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime updateStartTime;
@TableField(exist = false)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime updateEndTime;
/**
*
*/
private String dataStatus;
/**
* ID
*/
private String createUserId;
/** /**
* *
*/ */
@TableField(fill = FieldFill.INSERT) @TableField(fill = FieldFill.INSERT)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date createTime; private LocalDateTime createTime;
/** /**
* *
*/ */
@TableField(fill = FieldFill.INSERT_UPDATE) private String updateUserId;
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date updateTime;
@TableField(exist = false)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date updateStartTime;
@TableField(exist = false)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date updateEndTime;
/** /**
* *
*/ */
private String dataStatus; @TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime updateTime;
} }

@ -1,5 +1,6 @@
package com.supervision.police.domain; package com.supervision.police.domain;
import java.time.LocalDateTime;
import java.util.Date; import java.util.Date;
import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.FieldFill;
@ -43,12 +44,33 @@ public class ModelIndexResult implements Serializable {
*/ */
private String atomicIds; private String atomicIds;
/**
* ID
*/
private String createUserId;
/** /**
* *
*/ */
@TableField(fill = FieldFill.INSERT) @TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime createTime;
/**
*
*/
private String updateUserId;
/**
*
*/
@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 Date createTime; private LocalDateTime updateTime;
@TableField(exist = false)
private static final long serialVersionUID = 1L;
} }

@ -1,12 +1,15 @@
package com.supervision.police.domain; package com.supervision.police.domain;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List; import java.util.List;
@TableName(value = "model_record_type") @TableName(value = "model_record_type")
@ -36,4 +39,32 @@ public class ModelRecordType implements Serializable {
@TableField(exist = false) @TableField(exist = false)
private List<NoteRecord> records; private List<NoteRecord> records;
/**
* ID
*/
private String createUserId;
/**
*
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime createTime;
/**
*
*/
private String updateUserId;
/**
*
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime updateTime;
@TableField(exist = false)
private static final long serialVersionUID = 1L;
} }

@ -1,10 +1,14 @@
package com.supervision.police.domain; package com.supervision.police.domain;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.time.LocalDateTime;
@TableName(value = "note_prompt") @TableName(value = "note_prompt")
@Data @Data
@ -26,4 +30,32 @@ public class NotePrompt implements Serializable {
*/ */
private String prompt; private String prompt;
/**
* ID
*/
private String createUserId;
/**
*
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime createTime;
/**
*
*/
private String updateUserId;
/**
*
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime updateTime;
@TableField(exist = false)
private static final long serialVersionUID = 1L;
} }

@ -8,6 +8,7 @@ import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date; import java.util.Date;
@TableName(value = "note_record") @TableName(value = "note_record")
@ -45,13 +46,6 @@ public class NoteRecord implements Serializable {
*/ */
private String answer; private String answer;
/**
*
*/
@TableField(fill = FieldFill.INSERT)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date createTime;
/** /**
* () * ()
*/ */
@ -68,4 +62,31 @@ public class NoteRecord implements Serializable {
*/ */
private String noteRecordsId; private String noteRecordsId;
/**
* ID
*/
private String createUserId;
/**
*
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime createTime;
/**
*
*/
private String updateUserId;
/**
*
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime updateTime;
@TableField(exist = false)
private static final long serialVersionUID = 1L;
} }

@ -1,5 +1,6 @@
package com.supervision.police.domain; package com.supervision.police.domain;
import java.time.LocalDateTime;
import java.util.Date; import java.util.Date;
import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.FieldFill;
@ -78,27 +79,42 @@ public class NoteRecords implements Serializable {
*/ */
private Integer indexNum; private Integer indexNum;
/** /**
* *
*/ */
@TableField(fill = FieldFill.INSERT) private String dataStatus;
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date createTime; @TableField(exist = false)
private List<NoteRecords> children;
/** /**
* * ID
*/
private String createUserId;
/**
*
*/ */
@TableField(fill = FieldFill.INSERT_UPDATE) @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 Date updateTime; private LocalDateTime createTime;
/** /**
* *
*/ */
private String dataStatus;
private String updateUserId;
/**
*
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime updateTime;
@TableField(exist = false) @TableField(exist = false)
private List<NoteRecords> children; private static final long serialVersionUID = 1L;
} }

@ -8,6 +8,7 @@ import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date; import java.util.Date;
@TableName(value = "triple_info") @TableName(value = "triple_info")
@ -49,13 +50,6 @@ public class TripleInfo implements Serializable {
@TableField(exist = false) @TableField(exist = false)
private String caseId; private String caseId;
/**
*
*/
@TableField(fill = FieldFill.INSERT)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date createTime;
/** /**
* *
*/ */
@ -71,11 +65,39 @@ public class TripleInfo implements Serializable {
*/ */
private String endNodeType; private String endNodeType;
/**
* ID
*/
private String createUserId;
/**
*
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime createTime;
/**
*
*/
private String updateUserId;
/**
*
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime updateTime;
@TableField(exist = false)
private static final long serialVersionUID = 1L;
public TripleInfo() { public TripleInfo() {
} }
// todo // todo
public TripleInfo(String startNode, String endNode, String relation, String noteRecordId, Date createTime, String startNodeType, String endNodeType) { public TripleInfo(String startNode, String endNode, String relation, String noteRecordId, LocalDateTime createTime, String startNodeType, String endNodeType) {
this.startNode = startNode; this.startNode = startNode;
this.endNode = endNode; this.endNode = endNode;
this.relation = relation; this.relation = relation;

@ -1,5 +1,6 @@
package com.supervision.police.vo; package com.supervision.police.dto;
import com.supervision.police.domain.CaseEvidence;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
@ -9,7 +10,7 @@ import java.util.List;
* *
*/ */
@Data @Data
public class CaseEvidenceReqVo { public class CaseEvidenceDTO {
@Schema(description = "案件证据id") @Schema(description = "案件证据id")
private String id; private String id;
@ -34,4 +35,17 @@ public class CaseEvidenceReqVo {
@Schema(description = "文件id集合") @Schema(description = "文件id集合")
private List<String> fileIdList; private List<String> fileIdList;
public CaseEvidence toCaseEvidence(){
CaseEvidence caseEvidence = new CaseEvidence();
caseEvidence.setId(this.id);
caseEvidence.setCaseId(this.caseId);
caseEvidence.setEvidenceName(this.evidenceName);
caseEvidence.setEvidenceType(this.evidenceType);
caseEvidence.setProvider(this.provider);
caseEvidence.setPartyA(this.partyA);
caseEvidence.setPartyB(this.partyB);
return caseEvidence;
}
} }

@ -0,0 +1,25 @@
package com.supervision.police.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.List;
@Data
public class CaseEvidenceDetailDTO {
@Schema(description = "案件证据id")
private String id;
@Schema(description = "案件证据名称")
private String evidenceName;
@Schema(description = "案件证据类型")
private String evidenceType;
@Schema(description = "案件证据文件信息列表")
private List<EvidenceFileDTO> fileList;
@Schema(description = "最近时间")
private String updateTime;
}

@ -0,0 +1,18 @@
package com.supervision.police.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Data
public class EvidenceFileDTO {
@Schema(description = "文件id集合")
private String fileId;
@Schema(description = "文件名称")
private String fileName;
@Schema(description = "文件类型")
private String fileType;
}

@ -2,6 +2,9 @@ package com.supervision.police.mapper;
import com.supervision.police.domain.CaseEvidence; import com.supervision.police.domain.CaseEvidence;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.supervision.police.dto.CaseEvidenceDetailDTO;
import java.util.List;
/** /**
* @author Administrator * @author Administrator
@ -11,6 +14,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
*/ */
public interface CaseEvidenceMapper extends BaseMapper<CaseEvidence> { public interface CaseEvidenceMapper extends BaseMapper<CaseEvidence> {
List<CaseEvidenceDetailDTO> queryEvidenceList(String caseId);
CaseEvidenceDetailDTO queryEvidenceDetail(String evidenceId);
} }

@ -1,13 +1,25 @@
package com.supervision.police.service; package com.supervision.police.service;
import com.supervision.police.vo.CaseEvidenceReqVo; import com.supervision.police.domain.CaseEvidence;
import com.supervision.police.dto.CaseEvidenceDTO;
import com.supervision.police.dto.CaseEvidenceDetailDTO;
import java.util.List;
public interface CaseEvidenceService { public interface CaseEvidenceService {
String saveEvidence(CaseEvidenceReqVo reqVO);
String updateEvidence(CaseEvidenceReqVo reqVO); /**
*
* @param caseEvidenceDTO
* @return id
*/
String saveEvidence(CaseEvidenceDTO caseEvidenceDTO);
String updateEvidence(CaseEvidenceDTO caseEvidenceDTO);
boolean deleteEvidence(String evidenceId); boolean deleteEvidence(String evidenceId);
void queryEvidenceList(String caseId); List<CaseEvidenceDetailDTO> queryEvidenceList(String caseId);
CaseEvidenceDetailDTO queryEvidenceDetail(String evidenceId);
} }

@ -1,33 +1,105 @@
package com.supervision.police.service.impl; package com.supervision.police.service.impl;
import cn.hutool.core.lang.Assert;
import com.supervision.police.daoService.CaseEvidenceDaoService;
import com.supervision.police.daoService.EvidenceFileDaoService;
import com.supervision.police.domain.CaseEvidence;
import com.supervision.police.domain.EvidenceFile;
import com.supervision.police.dto.CaseEvidenceDetailDTO;
import com.supervision.police.service.CaseEvidenceService; import com.supervision.police.service.CaseEvidenceService;
import com.supervision.police.vo.CaseEvidenceReqVo; import com.supervision.police.dto.CaseEvidenceDTO;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
@Slf4j @Slf4j
@Service @Service
@RequiredArgsConstructor @RequiredArgsConstructor
public class CaseEvidenceServiceImpl implements CaseEvidenceService { public class CaseEvidenceServiceImpl implements CaseEvidenceService {
private final CaseEvidenceDaoService caseEvidenceDaoService;
private final EvidenceFileDaoService evidenceFileDaoService;
@Override @Override
public String saveEvidence(CaseEvidenceReqVo reqVO) { @Transactional(transactionManager = "dataSourceTransactionManager",rollbackFor = Exception.class)
return null; public String saveEvidence(CaseEvidenceDTO caseEvidenceDTO) {
// 必填校验
caseEvidencePersistenceAssert(caseEvidenceDTO);
// 保存证据信息
CaseEvidence caseEvidence = caseEvidenceDTO.toCaseEvidence();
caseEvidenceDaoService.save(caseEvidence);
if (true){
throw new IllegalArgumentException("保存证据信息失败");
}
//保存文件关联信息
caseEvidenceDTO.getFileIdList().forEach(fileId -> {
EvidenceFile evidenceFile = new EvidenceFile();
evidenceFile.setFileId(fileId);
evidenceFile.setEvidenceId(caseEvidence.getId());
evidenceFileDaoService.save(evidenceFile);
});
return caseEvidence.getId();
}
private void caseEvidencePersistenceAssert(CaseEvidenceDTO caseEvidenceDTO) {
Assert.notEmpty(caseEvidenceDTO.getCaseId(),"案件id不能为空");
Assert.notEmpty(caseEvidenceDTO.getEvidenceName(),"证据名称不能为空");
Assert.notEmpty(caseEvidenceDTO.getEvidenceType(),"证据类型不能为空");
Assert.notEmpty(caseEvidenceDTO.getProvider(),"证据提供人不能为空");
Assert.notEmpty(caseEvidenceDTO.getFileIdList(),"文件id不能为空");
} }
@Override @Override
public String updateEvidence(CaseEvidenceReqVo reqVO) { @Transactional(transactionManager = "dataSourceTransactionManager",rollbackFor = Exception.class)
return null; public String updateEvidence(CaseEvidenceDTO caseEvidenceDTO) {
Assert.notEmpty(caseEvidenceDTO.getId(),"证据id不能为空");
caseEvidencePersistenceAssert(caseEvidenceDTO);
caseEvidenceDaoService.getOptById(caseEvidenceDTO.getId()).orElseThrow(() -> new IllegalArgumentException("证据信息不存在"));
// 更新证据信息
CaseEvidence caseEvidence = caseEvidenceDTO.toCaseEvidence();
caseEvidenceDaoService.updateById(caseEvidence);
// 更新文件关联信息
evidenceFileDaoService.lambdaUpdate().eq(EvidenceFile::getEvidenceId,caseEvidence.getId()).remove();
caseEvidenceDTO.getFileIdList().forEach(fileId -> {
EvidenceFile evidenceFile = new EvidenceFile();
evidenceFile.setFileId(fileId);
evidenceFile.setEvidenceId(caseEvidence.getId());
evidenceFileDaoService.save(evidenceFile);
});
return caseEvidenceDTO.getId();
} }
@Override @Override
@Transactional(transactionManager = "dataSourceTransactionManager",rollbackFor = Exception.class)
public boolean deleteEvidence(String evidenceId) { public boolean deleteEvidence(String evidenceId) {
return false;
boolean remove = caseEvidenceDaoService.lambdaUpdate().eq(CaseEvidence::getId, evidenceId).remove();
if (remove){
evidenceFileDaoService.lambdaUpdate().eq(EvidenceFile::getEvidenceId,evidenceId).remove();
}
return remove;
} }
@Override @Override
public void queryEvidenceList(String caseId) { @Transactional(transactionManager = "dataSourceTransactionManager",rollbackFor = Exception.class)
public List<CaseEvidenceDetailDTO> queryEvidenceList(String caseId) {
return caseEvidenceDaoService.queryEvidenceList(caseId);
}
// todo: 设置返回值 @Override
@Transactional(transactionManager = "dataSourceTransactionManager",rollbackFor = Exception.class)
public CaseEvidenceDetailDTO queryEvidenceDetail(String evidenceId) {
return caseEvidenceDaoService.queryEvidenceDetail(evidenceId);
} }
} }

@ -30,6 +30,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.StopWatch; import org.springframework.util.StopWatch;
import java.time.LocalDateTime;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
@ -164,7 +165,7 @@ public class ModelRecordTypeServiceImpl extends ServiceImpl<ModelRecordTypeMappe
|| StringUtils.isEmpty(property) || StringUtils.isEmpty(value)) { || StringUtils.isEmpty(property) || StringUtils.isEmpty(value)) {
continue; continue;
} }
TripleInfo tripleInfo = new TripleInfo(entity, property, value, record.getId(), new Date(), startNodeType, endNodeType); TripleInfo tripleInfo = new TripleInfo(entity, property, value, record.getId(), LocalDateTime.now(), startNodeType, endNodeType);
tripleInfoMapper.insert(tripleInfo); tripleInfoMapper.insert(tripleInfo);
tripleInfos.add(tripleInfo); tripleInfos.add(tripleInfo);
} }

@ -40,6 +40,7 @@ import org.springframework.util.StopWatch;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
import java.io.IOException; import java.io.IOException;
import java.time.LocalDateTime;
import java.util.*; import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -128,7 +129,7 @@ public class RecordServiceImpl extends ServiceImpl<NoteRecordMapper, NoteRecord>
noteRecord.setPersonName(records.getName()); noteRecord.setPersonName(records.getName());
noteRecord.setQuestion(qa.getQuestion()); noteRecord.setQuestion(qa.getQuestion());
noteRecord.setAnswer(qa.getAnswer()); noteRecord.setAnswer(qa.getAnswer());
noteRecord.setCreateTime(new Date()); noteRecord.setCreateTime(LocalDateTime.now());
Map<String, String> paramMap = new HashMap<>(); Map<String, String> paramMap = new HashMap<>();
paramMap.put("allTypes", allTypes.toString()); paramMap.put("allTypes", allTypes.toString());
paramMap.put("question", qa.getQuestion()); paramMap.put("question", qa.getQuestion());

@ -28,6 +28,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.io.File; import java.io.File;
import java.time.LocalDateTime;
import java.util.*; import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -101,7 +102,7 @@ public class ExampleChatController {
noteRecord.setPersonName("裴金禄"); noteRecord.setPersonName("裴金禄");
noteRecord.setQuestion(qa.getQuestion()); noteRecord.setQuestion(qa.getQuestion());
noteRecord.setAnswer(qa.getAnswer()); noteRecord.setAnswer(qa.getAnswer());
noteRecord.setCreateTime(new Date()); noteRecord.setCreateTime(LocalDateTime.now());
// if (qa.getAnswer().length() > 500) { // if (qa.getAnswer().length() > 500) {
// continue; // continue;

@ -24,4 +24,54 @@
party_b,create_user_id,create_time, party_b,create_user_id,create_time,
update_user_id,update_time update_user_id,update_time
</sql> </sql>
<resultMap id="evidenceFileDTOMapId" type="com.supervision.police.dto.EvidenceFileDTO">
<id column="file_id" property="fileId"/>
<result column="filename" property="fileName"/>
<result column="file_type" property="fileType"/>
</resultMap>
<resultMap id="CaseEvidenceDetailDTOMapId" type="com.supervision.police.dto.CaseEvidenceDetailDTO">
<id column="id" property="id"/>
<result column="evidence_name" property="evidenceName"/>
<result column="evidence_type" property="evidenceType"/>
<result column="update_time" property="updateTime"/>
<collection property="fileList" ofType="com.supervision.police.dto.EvidenceFileDTO" resultMap="evidenceFileDTOMapId"/>
</resultMap>
<select id="queryEvidenceList" resultMap="CaseEvidenceDetailDTOMapId">
select ce.id,
ce.evidence_name,
ce.evidence_type,
ef.file_id,
mf.filename,
mf.file_type,
ce.update_time
from case_evidence ce
left join evidence_file ef on ce.id = ef.evidence_id
left join minio_file mf on mf.id = ef.file_id
<where>
<if test="caseId != null and caseId != ''">
ce.case_id = #{caseId}
</if>
</where>
</select>
<select id="queryEvidenceDetail" resultType="com.supervision.police.dto.CaseEvidenceDetailDTO">
select ce.id,
ce.evidence_name,
ce.evidence_type,
ef.file_id,
mf.filename,
mf.file_type,
ce.update_time
from case_evidence ce
left join evidence_file ef on ce.id = ef.evidence_id
left join minio_file mf on mf.id = ef.file_id
<where>
<if test="evidenceId != null and evidenceId != ''">
ce.id = #{evidenceId}
</if>
</where>
</select>
</mapper> </mapper>

Loading…
Cancel
Save