|
|
|
@ -15,6 +15,7 @@ import lombok.RequiredArgsConstructor;
|
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
|
import java.util.HashSet;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
import java.util.Set;
|
|
|
|
@ -28,6 +29,8 @@ public class MroServiceImpl implements MroService {
|
|
|
|
|
|
|
|
|
|
private final ModelService modelService;
|
|
|
|
|
|
|
|
|
|
private final CaseStatusManageService caseStatusManageService;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public IPage<CaseProcessDTO> queryCaseList(CaseProcessReqVO caseProcessReqVO, Integer page, Integer size) {
|
|
|
|
@ -50,16 +53,27 @@ public class MroServiceImpl implements MroService {
|
|
|
|
|
List<ModelCase> modelCases = modelCaseService.listByIds(caseIds);
|
|
|
|
|
Assert.notEmpty(modelCases, "案件不存在!");
|
|
|
|
|
|
|
|
|
|
// 创建一个线程
|
|
|
|
|
new Thread(() -> {
|
|
|
|
|
log.info("开始异步分析案件....");
|
|
|
|
|
List<String> caseIdList = new ArrayList<>();
|
|
|
|
|
for (ModelCase modelCase : modelCases) {
|
|
|
|
|
int caseAnalysisStatus = modelCase.getCaseAnalysisStatus();
|
|
|
|
|
if (1 == caseAnalysisStatus) {
|
|
|
|
|
log.info("案件【{}】正在分析中,跳过", modelCase.getCaseName());
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
caseStatusManageService.whenAnalyseCaseStart(modelCase.getId());
|
|
|
|
|
caseIdList.add(modelCase.getId());
|
|
|
|
|
}
|
|
|
|
|
for (String caseId : caseIdList) {
|
|
|
|
|
AnalyseCaseDTO analyseCaseDTO = new AnalyseCaseDTO();
|
|
|
|
|
analyseCaseDTO.setCaseId(modelCase.getId());
|
|
|
|
|
analyseCaseDTO.setCaseId(caseId);
|
|
|
|
|
modelService.analyseCaseWrapper(analyseCaseDTO);
|
|
|
|
|
}
|
|
|
|
|
log.info("案件分析完成!");
|
|
|
|
|
}).start();
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|