feiyu02
2022-07-28 e844ef2fdab88508e7dff4bb9e7b1632fcce15b2
src/main/kotlin/cn/flightfeather/supervision/lightshare/service/impl/SubtaskServiceImpl.kt
@@ -2,6 +2,9 @@
import cn.flightfeather.supervision.business.AutoScore
import cn.flightfeather.supervision.business.AutoScore2
import cn.flightfeather.supervision.business.storage.StAutoScore
import cn.flightfeather.supervision.business.storage.item.StScoreItem_1
import cn.flightfeather.supervision.business.storage.item.StScoreItem_2
import cn.flightfeather.supervision.domain.ds1.entity.*
import cn.flightfeather.supervision.domain.ds1.mapper.*
import cn.flightfeather.supervision.common.utils.Constant
@@ -24,6 +27,10 @@
    val dateUtil = DateUtil()
    @Autowired
    lateinit var scoreItem1: StScoreItem_1
    @Autowired
    lateinit var scoreItem2: StScoreItem_2
    @Autowired
    lateinit var taskService: TaskService
    @Autowired
@@ -465,15 +472,19 @@
            criteria.andEqualTo("stguid", subtask.stguid)
            val result = evaluationMapper.selectByExample(example)
            if (result.isEmpty()) {
                if (subtask.districtname == "徐汇区") {
                    val autoScore = AutoScore2()
                    autoScore.subtask = subtask
                    autoScore.calculateScore()
                } else {
                    val autoScore = AutoScore()
                    autoScore.subtask = subtask
                    autoScore.calculateScore()
                }
//                if (subtask.districtname == "徐汇区") {
//                    val autoScore = AutoScore2()
//                    autoScore.subtask = subtask
//                    autoScore.calculateScore()
//                } else {
//                    val autoScore = AutoScore()
//                    autoScore.subtask = subtask
//                    autoScore.calculateScore()
//                }
                val s = scenseMapper.selectByPrimaryKey(subtask.scenseid)
                val autoScore = StAutoScore(scoreItem1, scoreItem2)
                autoScore.sceneType = Constant.ScenseType.getByValue(s.typeid?.toString())
                autoScore.sceneGrade(subtask)
            }
        }
@@ -992,36 +1003,43 @@
    }
    override fun getSummary(topTaskId: String, sceneTypeId: Int?): List<SubTaskSummary> {
        val result = mutableListOf<SubTaskSummary>()
//        val result = mutableListOf<SubTaskSummary>()
        subtaskMapper.selectByTopTask2(topTaskId, sceneTypeId).forEach {
            val scene = scenseMapper.selectByPrimaryKey(it.scenseid)
            var p = 0
            var c = 0
            var pc = 0
            var cc = 0
            problemlistMapper.selectByExample(Example(Problemlist::class.java).apply {
                createCriteria().andEqualTo("stguid", it.stguid)
            }).forEach {pro ->
                p++
                if (pro.ischanged == true) c++
                if (pro.extension3 != Constant.PROBLEM_UNCHECKED) pc++
                if (pro.extension3 == Constant.CHANGE_CHECK_PASS || pro.extension3 == Constant.CHANGE_CHECK_FAIL) cc++
            }
            result.add(SubTaskSummary().apply {
                stGuid = it.stguid
                stName = it.name
                sceneId = it.scenseid
                sceneName = scene.name
                sceneType = scene.type
                stPlanTime = it.planstarttime
                proNum = p
                changeNum = c
                proCheckedNum = pc
                changeCheckedNum = cc
            })
        }
//        subtaskMapper.selectByTopTask2(topTaskId, sceneTypeId).forEach {
//            val scene = scenseMapper.selectByPrimaryKey(it.scenseid)
//            var p = 0
//            var c = 0
//            var pc = 0
//            var cc = 0
//            problemlistMapper.selectByExample(Example(Problemlist::class.java).apply {
//                createCriteria().andEqualTo("stguid", it.stguid)
//            }).forEach {pro ->
//                p++
//                if (pro.ischanged == true) c++
//                if (pro.extension3 != Constant.PROBLEM_UNCHECKED) pc++
//                if (pro.extension3 == Constant.CHANGE_CHECK_PASS || pro.extension3 == Constant.CHANGE_CHECK_FAIL) cc++
//            }
//            val ins = inspectionMapper.selectByExample(Example(Inspection::class.java).apply {
//                createCriteria().andEqualTo("stguid", it.stguid)
//            })
//            result.add(SubTaskSummary().apply {
//                stGuid = it.stguid
//                stName = it.name
//                if (ins.isNotEmpty()) insGuid = ins[0].guid
//                sceneId = it.scenseid
//                sceneName = scene.name
//                sceneType = scene.type
//                stPlanTime = it.planstarttime
//                proNum = p
//                changeNum = c
//                proCheckedNum = pc
//                changeCheckedNum = cc
//            })
//        }
        return result
//        return result
        return subtaskMapper.getSummary(topTaskId, sceneTypeId)
    }
}