1. 添加案件状态管理服务代码

2. 添加状态枚举
topo_dev
xueqingkun 9 months ago
parent 4c316bdc60
commit 88c401b273

@ -0,0 +1,25 @@
package com.supervision.constant;
/**
*
*/
public enum CaseAnalysisStatusEnum {
UNANALYZED("0","未分析"),
ANALYZING("1","正在分析"),
ANALYZED("2","分析成功"),
ANALYZE_FAIL("3","分析失败"),
;
private String code;
private String desc;
CaseAnalysisStatusEnum(String code, String desc) {
this.code = code;
this.desc = desc;
}
public String getCode() {
return code;
}
public String getDesc() {
return desc;
}
}

@ -0,0 +1,22 @@
package com.supervision.constant;
/**
* 0: 1: 2
*/
public enum CaseDataStatusEnum {
NO_DATA("0","没有基础数据"),
NOT_UPDATE("1","数据未更新"),
UPDATE("2","数据已更新");
private String code;
private String desc;
CaseDataStatusEnum(String code, String desc) {
this.code = code;
this.desc = desc;
}
public String getCode() {
return code;
}
public String getDesc() {
return desc;
}
}

@ -34,5 +34,25 @@ public interface CaseStatusManageService {
*
* @param caseId id
*/
void whenUpdateData(String caseId);
void whenUpdateData(String caseId);
/**
*
* @param caseId id
* @param score
*/
void whenAnalyseCaseSuccess(String caseId,Integer score);
/**
*
* @param caseId id
*/
void whenAnalyseCaseFail(String caseId);
/**
*
* @param caseId id
*/
void whenAnalyseCaseStart(String caseId);
}

@ -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));
}
}

Loading…
Cancel
Save