You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
fu-hsi-service/src/main/java/com/supervision/police/service/CaseEvidenceService.java

150 lines
4.2 KiB
Java

package com.supervision.police.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.supervision.police.domain.CaseEvidence;
import com.supervision.police.domain.EvidenceDirectory;
import com.supervision.police.dto.*;
import com.supervision.police.vo.EvidenceDirectoryReqVO;
import com.supervision.police.vo.VerifyEvidenceReqVO;
import java.util.List;
public interface CaseEvidenceService extends IService<CaseEvidence> {
/**
* 保存案件证据信息
* @param caseEvidenceDTO 证据信息
* @return 证据id
*/
String saveEvidence(CaseEvidenceDTO caseEvidenceDTO);
/**
* 更新案件证据信息
* @param caseEvidenceDTO 证据信息
* @return 证据id
*/
String updateEvidence(CaseEvidenceDTO caseEvidenceDTO);
/**
* 删除案件证据信息
* @param evidenceId 证据id
* @return 是否删除成功 true/false
*/
boolean deleteEvidence(String evidenceId,String fileId);
boolean batchDeleteEvidence(List<EvidenceIdWrapper> evidenceIdWrappers);
/**
* 查询案件证据信息列表
* @param caseId 案件id
* @return 证据信息列表
*/
List<CaseEvidenceDetailDTO> queryEvidenceList(String caseId);
List<CaseEvidenceDetailDTO> queryEvidenceList(String caseId,String batchNo);
/**
* 分页查询案件证据信息列表
* @param caseId 案件id
* @param directoryId 目录id
* @param pageNum 每页大小
* @param pageSize 当前页码
* @return
*/
IPage<CaseEvidenceDetailDTO> pageListEvidence(String caseId,String directoryId,String evidenceName, Integer pageNum, Integer pageSize);
CaseEvidenceDetailDTO queryEvidenceDetail(String evidenceId);
List<EvidenceCategoryDTO> listCategoryTree(String caseType);
/**
* 证据属性分析
* @param evidenceId 证据id
*/
void evidenceAnalysis(String evidenceId);
void callEvidenceAnalysis(String evidenceId);
/**
* 查询案件证据目录树
* @param caseId 案件id
* @return
*/
List<EvidenceDirectoryDTO> listFileTree(String caseId);
List<EvidenceDirectoryDTO> listFileTree(String caseId,String batchNo);
List<EvidenceDirectoryDTO> listFileTree(String caseId,String batchNo,String evidenceId,String directoryId);
List<EvidenceDirectoryDTO> listDirectoryTree(String caseId);
/**
* 初始化案件证据目录
* @param caseId 案件id
* @param caseType 案件类型
*/
void initCaseEvidenceDirectory(String caseId,String caseType);
/**
* 更新案件证据目录
* @param evidenceDirectory 目录信息
* @return true / false
*/
Boolean updateDirectory(EvidenceDirectory evidenceDirectory);
/**
* 移动文件到指定目录
* @param evidenceFileDTO 文件信息
* @return true / false
*/
Boolean moveFile(DirectoryFileDTO evidenceFileDTO);
/**
* 删除文件
* @param evidenceFileDTO 文件信息
* @return true / false
*/
Boolean removeFile(DirectoryFileDTO evidenceFileDTO);
/**
* 删除目录
* @param directoryIdList 目录id集合
* @return
*/
Boolean removeDirectory(List<String> directoryIdList);
/**
* 证据识别并提取
* @param evidenceFileDTOS 文件信息
*/
String ocrAndExtract(String caseId, List<EvidenceDirectoryDTO> evidenceFileDTOS);
String updateCaseEvidence4NewTransaction(List<CaseEvidenceDetailDTO> caseEvidenceDetailDTOList);
/**
* 证据识别并提取列表
* @param caseId 案件id
* @param batchNo 批次号
* @return
*/
List<EvidenceProcessDTO> listOcrAndExtract(String caseId,String batchNo);
void verifyEvidence(List<EvidenceVerifyDTO> evidenceVerifyDTOS,String caseId,String batchNo);
void verifyEvidence(VerifyEvidenceReqVO verifyEvidenceReqVO);
List<EvidenceDirectoryDTO> evidenceDetails(String caseId, String batchNo,String evidenceId);
String generateDirectoryName(String caseId, String categoryId, String provider);
EvidenceDirectory createDirectory(EvidenceDirectoryReqVO evidenceDirectory);
void syncEvidenceAnalysis(List<CaseEvidenceDetailDTO> evidenceList);
}