From 0723f31c8823e51449bd2e34f4b26a75f9e9cd2b Mon Sep 17 00:00:00 2001
From: PerryHsu <perryhsu@163.com>
Date: 星期一, 26 十二月 2022 01:53:27 +0800
Subject: [PATCH] 单数据导出逻辑更换

---
 src/main/java/com/whyc/service/ExcelExportService.java |   63 +++++++++++++++++++++++++++++--
 1 files changed, 58 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/whyc/service/ExcelExportService.java b/src/main/java/com/whyc/service/ExcelExportService.java
index 6f983f6..4991aa4 100644
--- a/src/main/java/com/whyc/service/ExcelExportService.java
+++ b/src/main/java/com/whyc/service/ExcelExportService.java
@@ -9,6 +9,7 @@
 import com.whyc.pojo.BattgroupData;
 import com.whyc.pojo.FileParam;
 import com.whyc.pojo.StationInfo;
+import com.whyc.pojo.TestParam;
 import com.whyc.util.MathUtil;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -40,6 +41,9 @@
     @Autowired
     private StationInfoService stationInfoService;
 
+    @Autowired
+    private TestParamService testParamService;
+
     public void resTestReport(BattGroupStationInfoWithFileParam info, HttpServletResponse response) throws IOException {
         HashMap<String, Object> map = Maps.newHashMap();
         //鎬讳綋璇勪环:鍐呴樆/鐢靛帇/杩炴帴鏉�/?瀹归噺
@@ -50,10 +54,41 @@
         int battVolTestCount = 0;
         int battResTestCount = 0;
         int battChainResTestCount = 0;
-        FileParam fileParam = info.getFileParam();
+        FileParam param = info.getFileParam();
         SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
 
-        fileParam.setTestTimeStr(format.format(fileParam.getTestTime()));
+        param.setTestTimeStr(format.format(param.getTestTime()));
+        //鏌ヨ鍏ㄥ眬鐨勬祴璇曠郴鏁板拰鍙傛暟
+        TestParam param2 = testParamService.getFactorsAndThreshold();
+        //鍒ゆ柇娴嬭瘯鏁版嵁鍛婅鑼冨洿
+        Float stdRes = param.getBattRes();
+        Float volLowCoeK1 = null;
+        Float volHighCoeK2 = null;
+        //鐢靛帇涓嶅悓,鐢靛帇闃堝�间笉鍚�
+        if(param.getBattVol() == 2){
+            volLowCoeK1 = param2.getVol2LowCoeK1();
+            volHighCoeK2 = param2.getVol2HighCoeK2();
+        }
+        else if(param.getBattVol() == 1.2){
+            volLowCoeK1 = param2.getVol1d2LowCoeK1();
+            volHighCoeK2 = param2.getVol1d2HighCoeK2();
+        }
+        else if(param.getBattVol() == 6){
+            volLowCoeK1 = param2.getVol6LowCoeK1();
+            volHighCoeK2 = param2.getVol6HighCoeK2();
+        }
+        else if(param.getBattVol() == 12){
+            volLowCoeK1 = param2.getVol12LowCoeK1();
+            volHighCoeK2 = param2.getVol12HighCoeK2();
+        }else{ //鐢靛帇闈炲父瑙勫��,鍒欓粯璁よ缃负2v鐨勭數鍘嬮槇鍊�
+            volLowCoeK1 = param2.getVol2LowCoeK1();
+            volHighCoeK2 = param2.getVol2HighCoeK2();
+        }
+        Float resGoodCoeK3 = param2.getResGoodCoeK3();
+        Float resBadCoeK4 = param2.getResBadCoeK4();
+        Float chainRes = param.getVersion().toUpperCase().contains("V2.0")?param.getChainRes():param.getConnRes();
+        Float finalVolLowCoeK = volLowCoeK1;
+        Float finalVolHighCoeK = volHighCoeK2;
         List<BattgroupData> dataList = info.getDataList();
         for(BattgroupData data : dataList){
             //璁$畻鐢靛帇,鍐呴樆,杩炴帴鏉℃暟鍊兼槸鍚︽湁鏁�,琚祴璇曡繃
@@ -74,18 +109,36 @@
             if(br==0.0){
                 data.setResEvaluation("鈥�");
             }
-            else if(!data.isHighResFlag1() && !data.isHighResFlag2()){
+            /*else if(!data.isHighResFlag1() && !data.isHighResFlag2()){
                 resGoodCount +=1;
                 data.setResEvaluation("浼�");
             }else if(data.isHighResFlag1()){
                 data.setResEvaluation("鑹�");
             }else{
                 data.setResEvaluation("宸�");
+            }*/
+            else if(br >= stdRes*resGoodCoeK3/100){
+                if(br >= stdRes*resBadCoeK4/100){
+                    // data.setHighResFlag2(true);
+                    data.setResEvaluation("宸�");
+                }else{
+                    // data.setHighResFlag1(true);
+                    data.setResEvaluation("鑹�");
+                }
+            }else{
+                resGoodCount +=1;
+                data.setResEvaluation("浼�");
             }
-            if(bv!=0.0 && !data.isLowVolFlag() && !data.isHighVolFlag()){
+            /*if(bv!=0.0 && !data.isLowVolFlag() && !data.isHighVolFlag()){
+                volGoodCount +=1;
+            }*/
+            if(bv!=0.0 && bv > finalVolLowCoeK && bv < finalVolHighCoeK){
                 volGoodCount +=1;
             }
-            if(cr!=0.0 && !data.isHighChainResFlag1() && !data.isHighChainResFlag2()){
+            /*if(cr!=0.0 && !data.isHighChainResFlag1() && !data.isHighChainResFlag2()){
+                chainResGoodCount +=1;
+            }*/
+            if(cr!=0.0 && cr < chainRes*param2.getChainResCoeK5()/100){
                 chainResGoodCount +=1;
             }
         };

--
Gitblit v1.9.1