From b8cc591541b88dd2bb93f111f8e8075842dce7ca Mon Sep 17 00:00:00 2001 From: feiyu02 <risaku@163.com> Date: 星期二, 13 八月 2024 17:21:06 +0800 Subject: [PATCH] 1. 新增设备信息相关功能 2. 修正自评估中数据自动评分的部分逻辑 --- src/main/kotlin/cn/flightfeather/supervision/domain/ds1/repository/EvaluationRuleRep.kt | 54 +++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 49 insertions(+), 5 deletions(-) diff --git a/src/main/kotlin/cn/flightfeather/supervision/domain/ds1/repository/EvaluationRuleRep.kt b/src/main/kotlin/cn/flightfeather/supervision/domain/ds1/repository/EvaluationRuleRep.kt index 9014743..21704a3 100644 --- a/src/main/kotlin/cn/flightfeather/supervision/domain/ds1/repository/EvaluationRuleRep.kt +++ b/src/main/kotlin/cn/flightfeather/supervision/domain/ds1/repository/EvaluationRuleRep.kt @@ -1,7 +1,10 @@ package cn.flightfeather.supervision.domain.ds1.repository +import cn.flightfeather.supervision.common.utils.Constant import cn.flightfeather.supervision.domain.ds1.entity.Evaluationrule +import cn.flightfeather.supervision.domain.ds1.entity.Evaluationsubrule2 import cn.flightfeather.supervision.domain.ds1.mapper.EvaluationruleMapper +import cn.flightfeather.supervision.domain.ds1.mapper.EvaluationsubruleMapper2 import cn.flightfeather.supervision.lightshare.vo.AreaEvaVo import org.springframework.stereotype.Repository import tk.mybatis.mapper.entity.Example @@ -10,21 +13,62 @@ * 璇勪及瑙勫垯鏁版嵁搴撶浉鍏虫搷浣� */ @Repository -class EvaluationRuleRep(private val evaluationruleMapper: EvaluationruleMapper) { +class EvaluationRuleRep( + private val evaluationruleMapper: EvaluationruleMapper, + private val evaluationsubruleMapper2: EvaluationsubruleMapper2, + private val sceneRep: SceneRep, +) { /** * 鏍规嵁鍙傛暟鏌ヨ鎬昏鍒� * @param areaEvaVo 鏌ヨ鍙傛暟 + * @return */ fun findBaseRule(areaEvaVo: AreaEvaVo): List<Evaluationrule?> { return evaluationruleMapper.selectByExample(Example(Evaluationrule::class.java).apply { createCriteria().andEqualTo("tasktypeid", areaEvaVo.taskTypeId) .andEqualTo("scensetypeid", areaEvaVo.scensetypeid) - .andEqualTo("provincecode", areaEvaVo.provincecode) - .andEqualTo("citycode", areaEvaVo.citycode) - .andEqualTo("districtcode", areaEvaVo.districtcode) - .andEqualTo("towncode", areaEvaVo.towncode) .andEqualTo("isuse", true) + and(createCriteria().orEqualTo("provincecode", areaEvaVo.provincecode).orIsNull("provincecode")) + and(createCriteria().orEqualTo("citycode", areaEvaVo.citycode).orIsNull("citycode")) + and(createCriteria().orEqualTo("districtcode", areaEvaVo.districtcode).orIsNull("districtcode")) + and(createCriteria().orEqualTo("towncode", areaEvaVo.towncode).orIsNull("towncode")) }) } + + /** + * 鏍规嵁宸℃煡浠诲姟id鎵惧埌瀵瑰簲鑷姩璇勪及瑙勫垯 + * @param subTaskId + * @return + */ + fun findAutoEvaluationRule(subTaskId:String): Evaluationrule? { + val scene = sceneRep.findBySubTask(subTaskId) + return findAutoEvaluationRule(Constant.SceneType.getByValue(scene?.typeid.toString())) + } + + /** + * 鏍规嵁鍦烘櫙绫诲瀷鎵惧埌鑷姩璇勪及瑙勫垯 + * 鑷姩璇勪及瑙勫垯鍙傛暟[Evaluationrule.tasktypeid] = 99 + * @param sceneType + * @return + */ + fun findAutoEvaluationRule(sceneType: Constant.SceneType): Evaluationrule? { + return evaluationruleMapper.selectOne(Evaluationrule().apply { + scensetypeid = sceneType.value.toByteOrNull() + tasktypeid = 99 + }) + } + + /** + * 鏍规嵁鎬昏鍒檌d鎵惧埌瀛愯鍒� + * @param ruleId + * @return + */ + fun findSubRule(ruleId: String?): List<Evaluationsubrule2> { + return evaluationsubruleMapper2.selectByExample(Example(Evaluationsubrule2::class.java).apply { + createCriteria().andEqualTo("erguid", ruleId) + orderBy("ertype").orderBy("displayid") + }) + } + } \ No newline at end of file -- Gitblit v1.9.3