package cn.flightfeather.supervision.business.report.cols
|
|
import cn.flightfeather.supervision.business.report.BaseCols
|
import cn.flightfeather.supervision.business.report.DataSource
|
import cn.flightfeather.supervision.common.utils.ExcelUtil
|
import cn.flightfeather.supervision.domain.ds1.entity.Itemevaluation
|
import org.apache.poi.hssf.util.HSSFColor
|
|
class ColTotalGrade(chooseIndexList: List<Int> = emptyList()) : BaseCols(chooseIndexList) {
|
|
override fun onHeads(dataSource: DataSource): MutableList<MutableList<ExcelUtil.MyCell>> {
|
val h1 = mutableListOf<ExcelUtil.MyCell>()
|
h1.add(ExcelUtil.MyCell("环信码"))
|
h1.add(ExcelUtil.MyCell("防治规范性"))
|
h1.add(ExcelUtil.MyCell("总分"))
|
|
return mutableListOf(h1)
|
}
|
|
override fun onOneRow(rowData: DataSource.RowData): List<Any> {
|
val row = mutableListOf<Any>()
|
|
if (rowData.noRecord()) {
|
repeat(heads.last().size) { row.add(("")) }
|
} else {
|
row.apply {
|
//总分和环信码
|
rowData.evaluation.let { e ->
|
val s = e?.resultscorebef?.toIntOrNull() ?: -1
|
val code = when {
|
s in 0..59 -> ExcelUtil.MyCell("红码", fontColor = HSSFColor.HSSFColorPredefined.RED.index)
|
s in 60..89 -> ExcelUtil.MyCell("黄码", fontColor = HSSFColor.HSSFColorPredefined.GOLD.index)
|
s >= 90 -> ExcelUtil.MyCell("绿码", fontColor = HSSFColor.HSSFColorPredefined.BRIGHT_GREEN.index)
|
else -> ExcelUtil.MyCell("", fontColor = HSSFColor.HSSFColorPredefined.BLACK.index)
|
}
|
val normalization = when {
|
s in 0..39 -> ExcelUtil.MyCell("严重不规范", fontColor = HSSFColor.HSSFColorPredefined.RED.index)
|
s in 40..89 -> ExcelUtil.MyCell("不规范", fontColor = HSSFColor.HSSFColorPredefined.ROSE.index)
|
s in 90..99 -> ExcelUtil.MyCell("基本规范", fontColor = HSSFColor.HSSFColorPredefined.GOLD.index)
|
s >= 100 -> ExcelUtil.MyCell("规范", fontColor = HSSFColor.HSSFColorPredefined.BRIGHT_GREEN.index)
|
else -> ExcelUtil.MyCell("", fontColor = HSSFColor.HSSFColorPredefined.BLACK.index)
|
}
|
add(code)
|
add(normalization)
|
add(s)
|
}
|
}
|
}
|
|
return row
|
}
|
}
|