|
|
|
@ -1,5 +1,15 @@
|
|
|
|
|
package com.supervision.police.service.impl;
|
|
|
|
|
|
|
|
|
|
import cn.hutool.core.lang.Assert;
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
|
|
|
import com.supervision.constant.CaseAnalysisStatusEnum;
|
|
|
|
|
import com.supervision.constant.CaseDataStatusEnum;
|
|
|
|
|
import com.supervision.constant.ScoreEnum;
|
|
|
|
|
import com.supervision.police.domain.ModelCase;
|
|
|
|
|
import com.supervision.police.domain.NoteRecord;
|
|
|
|
|
import com.supervision.police.mapper.ModelCaseMapper;
|
|
|
|
|
import com.supervision.police.mapper.NoteRecordMapper;
|
|
|
|
|
import com.supervision.police.service.CaseStatusManageService;
|
|
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
@ -11,9 +21,36 @@ import org.springframework.stereotype.Service;
|
|
|
|
|
public class CaseStatusManageServiceImpl implements CaseStatusManageService {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private final ModelCaseMapper modelCaseMapper;
|
|
|
|
|
|
|
|
|
|
private final NoteRecordMapper noteRecordMapper;
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void whenSaveCasePeople(String caseId, String roleId) {
|
|
|
|
|
Assert.notEmpty(caseId, "案件id不能为空");
|
|
|
|
|
Assert.notEmpty(roleId, "角色id不能为空");
|
|
|
|
|
|
|
|
|
|
// 只处理行为人的角色类型
|
|
|
|
|
if (!"1".equals(roleId)){
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ModelCase modelCase = modelCaseMapper.selectById(caseId);
|
|
|
|
|
Assert.notNull(modelCase,"案件信息不存在");
|
|
|
|
|
|
|
|
|
|
if (0 != modelCase.getCaseDataStatus()){
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
// 查看是否有笔录
|
|
|
|
|
Long count = noteRecordMapper.selectCount(
|
|
|
|
|
new LambdaQueryWrapper<>(new NoteRecord())
|
|
|
|
|
.eq(NoteRecord::getCaseId, caseId).eq(NoteRecord::getRole, roleId));
|
|
|
|
|
|
|
|
|
|
if (count > 0){
|
|
|
|
|
modelCaseMapper.update(new LambdaUpdateWrapper<ModelCase>()
|
|
|
|
|
.eq(ModelCase::getId, caseId)
|
|
|
|
|
.set(ModelCase::getCaseDataStatus, CaseDataStatusEnum.UPDATE));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
@ -23,16 +60,58 @@ public class CaseStatusManageServiceImpl implements CaseStatusManageService {
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void whenUploadRecord(String caseId) {
|
|
|
|
|
|
|
|
|
|
modelCaseMapper.update(new LambdaUpdateWrapper<ModelCase>()
|
|
|
|
|
.eq(ModelCase::getId, caseId)
|
|
|
|
|
.set(ModelCase::getCaseDataStatus, CaseDataStatusEnum.UPDATE));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void whenDeleteRecord(String caseId) {
|
|
|
|
|
|
|
|
|
|
this.whenUpdateData(caseId);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void whenUpdateData(String caseId) {
|
|
|
|
|
Assert.notEmpty(caseId, "案件id不能为空");
|
|
|
|
|
modelCaseMapper.update(new LambdaUpdateWrapper<ModelCase>()
|
|
|
|
|
.eq(ModelCase::getId, caseId)
|
|
|
|
|
.set(ModelCase::getCaseDataStatus, CaseAnalysisStatusEnum.UNANALYZED)
|
|
|
|
|
.set(ModelCase::getCaseDataStatus, CaseDataStatusEnum.NOT_UPDATE)
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void whenAnalyseCaseSuccess(String caseId, Integer score) {
|
|
|
|
|
|
|
|
|
|
Assert.notEmpty(caseId, "案件id不能为空");
|
|
|
|
|
|
|
|
|
|
modelCaseMapper.update(new LambdaUpdateWrapper<ModelCase>()
|
|
|
|
|
.eq(ModelCase::getId, caseId)
|
|
|
|
|
.set(ModelCase::getCaseAnalysisStatus, CaseAnalysisStatusEnum.ANALYZED)
|
|
|
|
|
.set(ModelCase::getCaseDataStatus, CaseDataStatusEnum.NOT_UPDATE)
|
|
|
|
|
.set(ModelCase::getTotalScore, score)
|
|
|
|
|
.set(ModelCase::getIdentifyResult, ScoreEnum.getScoreEnum(score)));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void whenAnalyseCaseFail(String caseId) {
|
|
|
|
|
|
|
|
|
|
Assert.notEmpty(caseId, "案件id不能为空");
|
|
|
|
|
|
|
|
|
|
modelCaseMapper.update(new LambdaUpdateWrapper<ModelCase>()
|
|
|
|
|
.eq(ModelCase::getId, caseId)
|
|
|
|
|
.set(ModelCase::getCaseAnalysisStatus, CaseAnalysisStatusEnum.ANALYZE_FAIL));
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void whenAnalyseCaseStart(String caseId) {
|
|
|
|
|
|
|
|
|
|
Assert.notEmpty(caseId, "案件id不能为空");
|
|
|
|
|
|
|
|
|
|
modelCaseMapper.update(new LambdaUpdateWrapper<ModelCase>()
|
|
|
|
|
.eq(ModelCase::getId, caseId)
|
|
|
|
|
.set(ModelCase::getCaseAnalysisStatus, CaseAnalysisStatusEnum.ANALYZING));
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|