diff --git a/src/main/java/com/supervision/police/mapper/ModelAtomicResultMapper.java b/src/main/java/com/supervision/police/mapper/ModelAtomicResultMapper.java index d0280e2..db133e8 100644 --- a/src/main/java/com/supervision/police/mapper/ModelAtomicResultMapper.java +++ b/src/main/java/com/supervision/police/mapper/ModelAtomicResultMapper.java @@ -13,6 +13,7 @@ import org.apache.ibatis.annotations.Param; public interface ModelAtomicResultMapper extends BaseMapper { ModelAtomicResult selectByCaseIdAndAtomicId(@Param("caseId") String caseId, + @Param("casePersonId") String casePersonId, @Param("atomicId") String atomicId); } diff --git a/src/main/java/com/supervision/police/service/impl/ModelServiceImpl.java b/src/main/java/com/supervision/police/service/impl/ModelServiceImpl.java index 25e36fd..42bb802 100644 --- a/src/main/java/com/supervision/police/service/impl/ModelServiceImpl.java +++ b/src/main/java/com/supervision/police/service/impl/ModelServiceImpl.java @@ -1,7 +1,10 @@ package com.supervision.police.service.impl; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.ObjectUtil; import cn.hutool.json.JSONUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.supervision.common.domain.R; import com.supervision.common.utils.StringUtils; import com.supervision.neo4j.dto.ResultDTO; @@ -38,15 +41,24 @@ public class ModelServiceImpl implements ModelService { private final ModelIndexResultMapper modelIndexResultMapper; + private final CasePersonMapper casePersonMapper; + @Override public R analyseCase(AnalyseCaseDTO analyseCaseDTO) { ModelCase modelCase = modelCaseMapper.selectById(analyseCaseDTO.getCaseId()); + // 获取行为人ID + CasePerson casePerson = casePersonMapper.selectOne(new LambdaQueryWrapper().eq(CasePerson::getCaseId, analyseCaseDTO.getCaseId()) + .eq(CasePerson::getRoleCode, "1").eq(CasePerson::getName, analyseCaseDTO.getLawActor())); + if (ObjectUtil.isEmpty(casePerson)) { + throw new RuntimeException("未找到的行为人" + analyseCaseDTO.getLawActor()); + } //原子指标 List atomicIndices = modelAtomicIndexMapper.selectByCaseType(modelCase.getCaseType()); Map atomicResultMap = new HashMap<>(); for (ModelAtomicIndex atomicIndex : atomicIndices) { //原子指标结果 ModelAtomicResult result = new ModelAtomicResult(); + result.setCasePersonId(casePerson.getId()); result.setCaseId(analyseCaseDTO.getCaseId()); result.setAtomicId(atomicIndex.getId()); //查询语句 @@ -70,10 +82,10 @@ public class ModelServiceImpl implements ModelService { // } } catch (Exception e) { - e.printStackTrace(); + log.error(e.getMessage(), e); } //保存原子指标结果表 - ModelAtomicResult exist = modelAtomicResultMapper.selectByCaseIdAndAtomicId(analyseCaseDTO.getCaseId(), atomicIndex.getId()); + ModelAtomicResult exist = modelAtomicResultMapper.selectByCaseIdAndAtomicId(analyseCaseDTO.getCaseId(), casePerson.getId(), atomicIndex.getId()); if (exist == null) { modelAtomicResultMapper.insert(result); } else { diff --git a/src/main/resources/mapper/ModelAtomicResultMapper.xml b/src/main/resources/mapper/ModelAtomicResultMapper.xml index 8a65d28..98a55ba 100644 --- a/src/main/resources/mapper/ModelAtomicResultMapper.xml +++ b/src/main/resources/mapper/ModelAtomicResultMapper.xml @@ -10,6 +10,9 @@ and atomic_id = #{atomicId} + + and case_person_id = #{casePersonId} + \ No newline at end of file