From 274bc2d0f7fe8fe7525196e4d7d6ece1cafe2c6c Mon Sep 17 00:00:00 2001
From: feiyu02 <risaku@163.com>
Date: 星期日, 04 二月 2024 17:32:14 +0800
Subject: [PATCH] 1. 新增静安50分制评估结果转换逻辑; 2. 新增根据坐标圆心和半径查询范围内场景逻辑;

---
 src/main/kotlin/cn/flightfeather/supervision/business/report/template/ScoreAnalysisSummary.kt |   30 ++++++++++++++++++------------
 1 files changed, 18 insertions(+), 12 deletions(-)

diff --git a/src/main/kotlin/cn/flightfeather/supervision/business/report/template/ScoreAnalysisSummary.kt b/src/main/kotlin/cn/flightfeather/supervision/business/report/template/ScoreAnalysisSummary.kt
index e6bf6cb..1dce64b 100644
--- a/src/main/kotlin/cn/flightfeather/supervision/business/report/template/ScoreAnalysisSummary.kt
+++ b/src/main/kotlin/cn/flightfeather/supervision/business/report/template/ScoreAnalysisSummary.kt
@@ -3,12 +3,12 @@
 import cn.flightfeather.supervision.business.report.BaseCols
 import cn.flightfeather.supervision.business.report.BaseTemplate
 import cn.flightfeather.supervision.business.report.DataSource
-import cn.flightfeather.supervision.business.report.cols.ColGrade
+import cn.flightfeather.supervision.business.report.cols.ColTotalGrade
 import cn.flightfeather.supervision.common.utils.ExcelUtil
 import kotlin.math.round
 
 class ScoreAnalysisSummary(dataSource: DataSource) : BaseTemplate(dataSource) {
-    override val cols: List<BaseCols> = listOf(ColGrade())
+    override val cols: List<BaseCols> = listOf(ColTotalGrade())
 
     override val templateName: String = "鍒嗚闀囪鑼冩�у垎鏋愯〃"
 
@@ -75,7 +75,7 @@
             tNonstandard += v.nonstandard
             tStandard += v.standard
         }
-        summarys.sortByDescending { it.standardPer }
+        summarys.sortByDescending { it.standard }
         for (i in summarys.indices) {
             val it = summarys[i]
             //鍙傝瘎鐧惧垎姣�
@@ -90,7 +90,11 @@
             //瑙勮寖鍖哄煙鍗犳瘮
             it.standardPer = it.standard.toDouble() / tStandard
             //瑙勮寖鍗犳瘮鎺掑悕
-            it.rank = i + 1
+            if (i > 0 && summarys[i - 1].standard == it.standard) {
+                it.rank = summarys[i - 1].rank
+            } else {
+                it.rank = i + 1
+            }
         }
 
         head.clear()
@@ -124,16 +128,18 @@
             ExcelUtil.MyCell("瑙勮寖鎬ф帓鍚�"),
         ))
 
-        summarys.forEach {
+        summarys.sortBy { it.townCode }
+        for (i in summarys.indices) {
+            val it = summarys[i]
             contents.add(
                 mutableListOf(
-                    it.townCode, it.townName, it.type, it.sceneCount, it.gradeCount, "${round(it.gradePer * 1000) / 10}%",
-                    it.level1, "${round(it.level1Per * 1000) / 10}%",
-                    it.level2, "${round(it.level2Per * 1000) / 10}%",
-                    it.level3, "${round(it.level3Per * 1000) / 10}%",
-                    it.level4, "${round(it.level4Per * 1000) / 10}%",
-                    it.nonstandard, "${round(it.nonstandardPer * 1000) / 10}%",
-                    it.standard, "${round(it.standardPer * 1000) / 10}%",
+                    i + 1, it.townName, it.type, it.sceneCount, it.gradeCount, ExcelUtil.MyCell(it.gradePer.toString(), isPercent = true),
+                    it.level1, ExcelUtil.MyCell(it.level1Per.toString(), isPercent = true),
+                    it.level2, ExcelUtil.MyCell(it.level2Per.toString(), isPercent = true),
+                    it.level3, ExcelUtil.MyCell(it.level3Per.toString(), isPercent = true),
+                    it.level4, ExcelUtil.MyCell(it.level4Per.toString(), isPercent = true),
+                    it.nonstandard, ExcelUtil.MyCell(it.nonstandardPer.toString(), isPercent = true),
+                    it.standard, ExcelUtil.MyCell(it.standardPer.toString(), isPercent = true),
                     it.rank
                 )
             )

--
Gitblit v1.9.3