From 46872a311da9480d3edb19223aca2e0833fb1e31 Mon Sep 17 00:00:00 2001 From: hcong <1050828145@qq.com> Date: 星期二, 17 十二月 2024 11:41:00 +0800 Subject: [PATCH] 1. 完成数据产品中间结果基本信息和具体信息入库 2. 修改ColInspectionInfo.kt 监管时间格式修改为yyyy-mm-dd 3. 新增数据产品类型枚举类 DataProductType 4. 修改BaseTemplate实现类通过重写genData方法生成Template相关数据 5. TODO 其他未涉及到的产品对象的中间结果对象 --- src/main/kotlin/cn/flightfeather/supervision/business/report/cols/ColInspectionInfo.kt | 95 ++++++++++++++++++++++++++++++++--------------- 1 files changed, 65 insertions(+), 30 deletions(-) diff --git a/src/main/kotlin/cn/flightfeather/supervision/business/report/cols/ColInspectionInfo.kt b/src/main/kotlin/cn/flightfeather/supervision/business/report/cols/ColInspectionInfo.kt index da2bfe8..7529d4f 100644 --- a/src/main/kotlin/cn/flightfeather/supervision/business/report/cols/ColInspectionInfo.kt +++ b/src/main/kotlin/cn/flightfeather/supervision/business/report/cols/ColInspectionInfo.kt @@ -7,30 +7,35 @@ import cn.flightfeather.supervision.common.utils.ExcelUtil //鐩戠璇︽儏 -class ColInspectionInfo() : BaseCols() { +class ColInspectionInfo(chooseIndexList: List<Int> = emptyList()) : BaseCols(chooseIndexList) { override fun onHeads(dataSource: DataSource): MutableList<MutableList<ExcelUtil.MyCell>> { - return mutableListOf(mutableListOf( - ExcelUtil.MyCell("鐩戠鏃堕棿"), - ExcelUtil.MyCell("宸℃煡浜哄憳"), - ExcelUtil.MyCell("闂绫诲瀷"), - ExcelUtil.MyCell("闂鎻忚堪"), - ExcelUtil.MyCell("闂浣嶇疆"), - ExcelUtil.MyCell("闂鏁�"), - ExcelUtil.MyCell("鏁存敼鏃堕棿"), - ExcelUtil.MyCell("鏁存敼鎯呭喌"), - ExcelUtil.MyCell("鏁存敼闂"), - ExcelUtil.MyCell("鏁存敼鏁�"), - ExcelUtil.MyCell("鏈暣鏀归棶棰�"), - ExcelUtil.MyCell("鏈暣鏀规暟"), - ExcelUtil.MyCell("瀹℃牳鎯呭喌"), - ExcelUtil.MyCell("闂瀹℃牳鏃堕棿"), - ExcelUtil.MyCell("鏁存敼瀹℃牳鏃堕棿"), - ExcelUtil.MyCell("闂鏁存敼鐜�"), - )) + return mutableListOf( + mutableListOf( + ExcelUtil.MyCell("鐩戠鏃堕棿"), + ExcelUtil.MyCell("宸℃煡浜哄憳"), + ExcelUtil.MyCell("闂绫诲瀷"), + ExcelUtil.MyCell("闂鎻忚堪"), + ExcelUtil.MyCell("闂浣嶇疆"), + ExcelUtil.MyCell("闂鏁�"), + ExcelUtil.MyCell("鏁存敼鏃堕棿"), + ExcelUtil.MyCell("鏁存敼鎯呭喌"), + ExcelUtil.MyCell("鏁存敼闂"), + ExcelUtil.MyCell("鏁存敼鏁�"), + ExcelUtil.MyCell("鏈暣鏀归棶棰�"), + ExcelUtil.MyCell("鏈暣鏀规暟"), + ExcelUtil.MyCell("闂鏁存敼鐜�"), + ExcelUtil.MyCell("瀹℃牳鎯呭喌"), + ExcelUtil.MyCell("闂瀹℃牳鏃堕棿"), + ExcelUtil.MyCell("鏁存敼瀹℃牳鏃堕棿"), + ExcelUtil.MyCell("闂瀹℃牳鏁�"), + ExcelUtil.MyCell("闂瀹℃牳鍗犳瘮"), + ExcelUtil.MyCell("鏁存敼瀹℃牳鏁�"), + ExcelUtil.MyCell("鏁存敼瀹℃牳鍗犳瘮"), + ) + ) } override fun onOneRow(rowData: DataSource.RowData): List<Any> { - val dateUtil = DateUtil() val row = mutableListOf<Any>() if (rowData.noRecord()) { repeat(heads.last().size) { row.add(("")) } @@ -38,7 +43,7 @@ row.apply { // 琛ㄥご锛氬贰鏌ユ儏鍐靛強闂銆佹暣鏀圭粺璁� //鐩戠鏃堕棿 - add(dateUtil.DateToString(rowData.subTask?.planstarttime, DateUtil.DateStyle.MM_DD) ?: "") + add(DateUtil.DateToString(rowData.subTask?.planstarttime, DateUtil.DateStyle.YYYY_MM_DD) ?: "") //宸℃煡浜哄憳 add(rowData.subTask?.executorrealtimes?.replace("#", "銆�") ?: "") //鏌ヨ瀛愪换鍔″搴旂殑闂锛屽苟涓旀牴鎹潯浠惰繘琛岀瓫閫� @@ -53,10 +58,15 @@ var cNum = 0//鏁存敼鏁� var unChangedProblem = ""//鏈暣鏀归棶棰� var unChangeNum = 0//鏈暣鏀规暟 + var changePercent: Any = ""//闂鏁存敼鐜� + var checkStatus = ""//瀹℃牳鎯呭喌 var pCheckTime = ""//闂瀹℃牳鏃堕棿 var cCheckTime = ""//鏁存敼瀹℃牳鏃堕棿 - var changePercent = ""//闂鏁存敼鐜� + var pCheckNum = 0//闂瀹℃牳鏁� + var pCheckPer: Any = ""//闂瀹℃牳鍗犳瘮 + var cCheckNum = 0//鏁存敼瀹℃牳鏁� + var cCheckPer: Any = ""//鏁存敼瀹℃牳鍗犳瘮F rowData.problems.forEach { p -> var typeName = "" for (t in rowData.problemTypes) { @@ -71,7 +81,7 @@ pDes += "${lr}$y銆�${p.problemname}" pLoc += "${lr}$y銆�${p.location}" pNum++ - changeTime = "${lr}$y銆�${dateUtil.DateToString(p.changedtime, DateUtil.DateStyle.YYYY_MM_DD_HH_MM_CN)}" + changeTime += "${lr}$y銆�${DateUtil.DateToString(p.changedtime, DateUtil.DateStyle.YYYY_MM_DD_HH_MM_CN)}" pChanged += "${lr}$y銆�${if (p.ischanged == true) "鉁�" else "脳"}" if (p.ischanged == true) { if (changedProblem.isNotBlank()) { @@ -86,23 +96,48 @@ unChangedProblem += "$y銆�${p.problemname}" unChangeNum++ } + changePercent = if (pNum == 0) "" else ExcelUtil.MyCell((cNum.toDouble() / pNum).toString(), isPercent = true) + val status = when (p.extension3) { - Constant.PROBLEM_CHECK_PASS -> "闂瀹℃牳閫氳繃"// - Constant.PROBLEM_CHECK_FAIL -> "闂瀹℃牳鏈�氳繃"// Constant.PROBLEM_UNCHECKED -> "闂鏈鏍�"// - Constant.CHANGE_UNCHECKED -> "鏁存敼鏈鏍�"// - Constant.CHANGE_CHECK_PASS -> "鏁存敼瀹℃牳閫氳繃"// - Constant.CHANGE_CHECK_FAIL -> "鏁存敼瀹℃牳鏈�氳繃"// + Constant.PROBLEM_CHECK_PASS -> { + pCheckNum++ + "闂瀹℃牳閫氳繃" + }// + Constant.PROBLEM_CHECK_FAIL -> { + pCheckNum++ + "闂瀹℃牳鏈�氳繃" + }// + Constant.CHANGE_UNCHECKED -> { + pCheckNum++ + "鏁存敼鏈鏍�" + }// + Constant.CHANGE_CHECK_PASS -> { + pCheckNum++ + cCheckNum++ + "鏁存敼瀹℃牳閫氳繃" + }// + Constant.CHANGE_CHECK_FAIL -> { + pCheckNum++ + cCheckNum++ + "鏁存敼瀹℃牳鏈�氳繃" + }// else -> "闂鏈鏍�" } checkStatus += "${lr}$y銆�${status}" - changePercent = if (pNum == 0) "" else "${(cNum * 100 / pNum)}%" + pCheckTime += "${lr}$y銆�/" + cCheckTime += "${lr}$y銆�/" + pCheckPer = if (pNum == 0) "" else ExcelUtil.MyCell((pCheckNum.toDouble() / pNum).toString(), isPercent = true) + cCheckPer = if (cNum == 0) "" else ExcelUtil.MyCell((cCheckNum.toDouble() / cNum).toString(), isPercent = true) + + y++ } addAll( listOf( pType, pDes, pLoc, pNum, changeTime, pChanged, changedProblem, cNum, - unChangedProblem, unChangeNum, checkStatus, pCheckTime, cCheckTime, changePercent + unChangedProblem, unChangeNum, changePercent, checkStatus, pCheckTime, cCheckTime, + pCheckNum, pCheckPer, cCheckNum, cCheckPer ) ) } -- Gitblit v1.9.3