From 82baf5d28ce79aa4d3b64956207d247596726924 Mon Sep 17 00:00:00 2001
From: hcong <1050828145@qq.com>
Date: 星期二, 10 十二月 2024 11:21:33 +0800
Subject: [PATCH] 1. BgTaskStatus状态属性序列化
---
src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/EvaluationsubruleServiceImpl.kt | 72 ++++++++++++++++++++++++++---------
1 files changed, 53 insertions(+), 19 deletions(-)
diff --git a/src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/EvaluationsubruleServiceImpl.kt b/src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/EvaluationsubruleServiceImpl.kt
index d104301..0d3ba73 100644
--- a/src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/EvaluationsubruleServiceImpl.kt
+++ b/src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/EvaluationsubruleServiceImpl.kt
@@ -1,44 +1,52 @@
package cn.flightfeather.supervision.lightshare.service.impl
+import cn.flightfeather.supervision.common.exception.BizException
import cn.flightfeather.supervision.domain.ds1.entity.Evaluationrule
import cn.flightfeather.supervision.domain.ds1.entity.Evaluationsubrule
+import cn.flightfeather.supervision.domain.ds1.entity.Evaluationsubrule2
import cn.flightfeather.supervision.domain.ds1.mapper.EvaluationruleMapper
import cn.flightfeather.supervision.domain.ds1.mapper.EvaluationsubruleMapper
+import cn.flightfeather.supervision.domain.ds1.mapper.EvaluationsubruleMapper2
+import cn.flightfeather.supervision.domain.ds1.repository.EvaluationRep
+import cn.flightfeather.supervision.domain.ds1.repository.EvaluationRuleRep
+import cn.flightfeather.supervision.domain.ds1.repository.SceneRep
import cn.flightfeather.supervision.lightshare.service.EvaluationsubruleService
+import cn.flightfeather.supervision.lightshare.vo.ScoreDetail
import org.springframework.stereotype.Service
import tk.mybatis.mapper.entity.Example
@Service
-class EvaluationsubruleServiceImpl (
- val evaluationsubruleMapper: EvaluationsubruleMapper,
- val evaluationruleMapper: EvaluationruleMapper
-):EvaluationsubruleService {
+class EvaluationsubruleServiceImpl(
+ val evaluationsubruleMapper2: EvaluationsubruleMapper2,
+ val evaluationsubruleMapper: EvaluationsubruleMapper,
+ val evaluationruleMapper: EvaluationruleMapper,
+ private val evaluationRep: EvaluationRep,
+ private val evaluationRuleRep: EvaluationRuleRep,
+ private val sceneRep: SceneRep,
+) : EvaluationsubruleService {
- override fun findOne(id: String): Evaluationsubrule = evaluationsubruleMapper.selectByPrimaryKey(id)
+ override fun findOne(id: String): Evaluationsubrule2 = evaluationsubruleMapper2.selectByPrimaryKey(id)
override fun findAll(): MutableList<Evaluationsubrule> = evaluationsubruleMapper.selectAll()
- override fun save(evaluationsubrule: Evaluationsubrule): Int = evaluationsubruleMapper.insert(evaluationsubrule)
+ override fun save(evaluationsubrule: Evaluationsubrule2): Int = evaluationsubruleMapper2.insert(evaluationsubrule)
- override fun update(evaluationsubrule: Evaluationsubrule): Int = evaluationsubruleMapper.updateByPrimaryKey(evaluationsubrule)
+ override fun update(evaluationsubrule: Evaluationsubrule2): Int =
+ evaluationsubruleMapper2.updateByPrimaryKey(evaluationsubrule)
- override fun delete(id: String): Int = evaluationsubruleMapper.deleteByPrimaryKey(id)
+ override fun delete(id: String): Int = evaluationsubruleMapper2.deleteByPrimaryKey(id)
- override fun findByRuleId(erguid: String): List<Evaluationsubrule> {
- val example = Example(Evaluationsubrule::class.java)
- val criteria = example.createCriteria()
- criteria.andEqualTo("erguid", erguid)
- example.orderBy("extension1").desc()
- return evaluationsubruleMapper.selectByExample(example)
+ override fun findByRuleId(erguid: String): List<Evaluationsubrule2> {
+ return evaluationRuleRep.findSubRule(erguid)
}
- override fun search(districtCode: String, sceneTypeId: String, version: String?): List<Evaluationsubrule> {
- val result = mutableListOf<Evaluationsubrule>()
+ override fun search(districtCode: String, sceneTypeId: String, version: String?): List<Evaluationsubrule2> {
+ val result = mutableListOf<Evaluationsubrule2>()
evaluationruleMapper.selectByExample(Example(Evaluationrule::class.java).apply {
createCriteria().andEqualTo("districtcode", districtCode)
- .andEqualTo("scensetypeid", sceneTypeId)
- }).takeIf { it.isNotEmpty() }?.get(0)?.let {rule ->
- evaluationsubruleMapper.selectByExample(Example(Evaluationsubrule::class.java).apply {
+ .andEqualTo("scensetypeid", sceneTypeId)
+ }).takeIf { it.isNotEmpty() }?.get(0)?.let { rule ->
+ evaluationsubruleMapper2.selectByExample(Example(Evaluationsubrule2::class.java).apply {
createCriteria().andEqualTo("erguid", rule.guid)
})
}?.also {
@@ -47,4 +55,30 @@
return result
}
+
+ override fun getAutoScore(subTaskId: String): ScoreDetail {
+ //鍦烘櫙淇℃伅
+ val scene = sceneRep.findBySubTask(subTaskId)
+ //鎬诲垎
+ val evaluation = evaluationRep.findBySubtask(subTaskId)
+ //瀛愯鍒欓�愭潯寰楀垎
+ val subRuleScores = evaluationRep.findItemEvaluation(subTaskId)
+ if (subRuleScores.isEmpty()) throw BizException("鏃犺瘎浼拌褰�")
+ //璇勫垎鎬昏鍒�
+ val rule = evaluationRuleRep.findAutoEvaluationRule(subTaskId) ?: throw BizException("鏈壘鍒扮浉鍏宠嚜鍔ㄨ瘎浼拌鍒�")
+ //鎬昏鍒欏搴旂殑璇勫垎瀛愯鍒�
+ val subRules = evaluationRuleRep.findSubRule(rule.guid)
+ //鏌ヨ缁撴灉
+ val result = ScoreDetail()
+ result.status = if (scene?.extension1.equals("1")) "鍦ㄥ缓" else "瀹屽伐"
+
+ result.updateTime = evaluation?.updatedate
+ subRules.forEach {
+ it.ertype ?: return@forEach
+ result.addDetail(result.details, it, it.ertype!! - 1, subRuleScores, false)
+ }
+ result.calScore()
+
+ return result
+ }
}
\ No newline at end of file
--
Gitblit v1.9.3