feiyu02
2022-11-15 909fd8929d7906f1dca68acc05e36e29b0b9192c
src/main/kotlin/cn/flightfeather/supervision/business/report/DataSource.kt
@@ -39,12 +39,12 @@
    val rowData = RowData()
    init {
        if (config.districtCode == null) {
            throw IllegalStateException("参数缺少区县编码:[districtCode]")
        }
        if (config.sceneType == null) {
            throw IllegalStateException("参数缺少场景类型:[sceneType]")
        }
//        if (config.districtCode == null) {
//            throw IllegalStateException("参数缺少区县编码:[districtCode]")
//        }
//        if (config.sceneType == null) {
//            throw IllegalStateException("参数缺少场景类型:[sceneType]")
//        }
        getSource(config)
    }
@@ -76,10 +76,10 @@
    }
    /**
     * 获取报告数据源
     * 获取报告数据源(巡查任务)
     */
    private fun getSource(config: ExcelConfigVo) {
        if (config.sceneType == null) return
//        if (config.sceneType == null) return
        val result = mutableListOf<Subtask>()
@@ -108,6 +108,8 @@
                    }
                    config.startTime?.let { andGreaterThanOrEqualTo("planstarttime", it) }
                    config.endTime?.let { andLessThanOrEqualTo("planendtime", it) }
                    config.districtCode?.let { andEqualTo("districtcode", it) }
//                    andEqualTo("tguid", config.topTaskGuid)
                }
            })
        } else {
@@ -142,6 +144,8 @@
        var index = 0
        var subTask: Subtask? = null
        private var lastScene: Scense? = null
        //场景基本信息
        val scene: Scense?
@@ -192,6 +196,7 @@
            }
        private var _problems = mutableListOf<Problemlist>()
        //评估总分
        val evaluation: Evaluation?
            get() {
                if (_evaluation == null) {
@@ -205,6 +210,7 @@
            }
        private var _evaluation: Evaluation? = null
        //评估细则得分
        val itemevaluationList: MutableList<Itemevaluation>
            get() {
                if (_itemevaluationList.isEmpty()) {
@@ -223,8 +229,8 @@
            get() {
                if (_problemTypes.isEmpty()) {
                    val r = dbMapper.problemtypeMapper.selectByExample(Example(Problemtype::class.java).apply {
                        createCriteria().andEqualTo("scensetypeid", config.sceneType)
                            .andEqualTo("districtcode", config.districtCode)
                        createCriteria().andEqualTo("scensetypeid", scene?.typeid)
                            .andEqualTo("districtcode", scene?.districtcode)
                        orderBy("extension1")
                    })
                    _problemTypes.addAll(r)
@@ -240,7 +246,7 @@
                    val rule = dbMapper.evaluationruleMapper.selectByExample(Example(Evaluationrule::class.java).apply {
                        createCriteria()
                            .andEqualTo("tasktypeid", 99)
                            .andEqualTo("scensetypeid", config.sceneType)
                            .andEqualTo("scensetypeid", scene?.typeid)
                    })
                    if (rule.isNotEmpty()) {
                        val ruleId = rule[0].guid
@@ -299,7 +305,7 @@
        val ledgerCount: Int
            get() {
                if (_ledgerCount == -1) {
                    val tzSceneType = Constant.ScenseType.typeMap(config.sceneType?.toByte())
                    val tzSceneType = Constant.ScenseType.typeMap(scene?.typeid)
                    _ledgerCount = dbMapper.ledgerSubTypeMapper.selectCountByExample(Example(LedgerSubType::class.java).apply {
                        createCriteria().andEqualTo("lScenetype", tzSceneType).andEqualTo("lNeedupdate", true)
                    })
@@ -356,6 +362,14 @@
         * 清空当前处理的对象的相关数据源
         */
        fun clear() {
            if (lastScene != null && lastScene?.typeid != _scene?.typeid) {
                _problemTypes.clear()
                _topItems.clear()
                _rules.clear()
                _ledgerCount = -1
            } else {
                lastScene = _scene
            }
            _scene = null
            _baseScene = null
            _problems.clear()