浏览代码

数据导出方法修改

wangchangsheng 3 年之前
父节点
当前提交
d3b7cb0e86

+ 12 - 3
src/main/java/com/gyee/frame/util/excel/ExcelExportUtils.java

@@ -1,5 +1,6 @@
 package com.gyee.frame.util.excel;
 
+import com.gyee.frame.util.task.TaskTemplateCallable;
 import org.apache.poi.hssf.usermodel.HSSFCell;
 import org.apache.poi.hssf.usermodel.HSSFRow;
 import org.apache.poi.hssf.usermodel.HSSFSheet;
@@ -54,7 +55,7 @@ public class ExcelExportUtils {
             }
             FileOutputStream out = new FileOutputStream(path + fileName + ".xls");  //向d://test.xls中写数据
             for (int i = 0; i < voList.get("F1").size(); i++) {
-                HSSFRow row = sheet.createRow((short) (sheet.getLastRowNum() + 1)); //对总行数减4,就是倒数行数加数据
+                HSSFRow row = sheet.createRow((short) (sheet.getLastRowNum() + 1)); //对总行数减1,就是倒数行数加数据
                 //创建单元格设值
                 switch (titles.size()) {
                     case 2:
@@ -63,7 +64,11 @@ public class ExcelExportUtils {
                         break;
                     case 5:
                         row.createCell(0).setCellValue(voList.get("F1").get(i).toString());
-                        row.createCell(1).setCellValue(Double.valueOf(voList.get("F2").get(i).toString()));
+                        if (Double.valueOf(voList.get("F3").get(i).toString())<=0){
+                            row.createCell(1).setCellValue(TaskTemplateCallable.balance());
+                         }else {
+                            row.createCell(1).setCellValue(Double.valueOf(voList.get("F2").get(i).toString()));
+                        }
                         row.createCell(2).setCellValue(Double.valueOf(voList.get("F3").get(i).toString()));
                         row.createCell(3).setCellValue(Double.valueOf(voList.get("F4").get(i).toString()));
                         row.createCell(4).setCellValue(Double.valueOf(voList.get("F5").get(i).toString()));
@@ -123,7 +128,11 @@ public class ExcelExportUtils {
                         break;
                     case 5:
                         row1.createCell(0).setCellValue(voList.get("F1").get(i).toString());
-                        row1.createCell(1).setCellValue(Double.valueOf(voList.get("F2").get(i).toString()));
+                        if (Double.valueOf(voList.get("F3").get(i).toString())<=0){
+                            row1.createCell(1).setCellValue(TaskTemplateCallable.balance());
+                        }else {
+                            row1.createCell(1).setCellValue(Double.valueOf(voList.get("F2").get(i).toString()));
+                        }
                         row1.createCell(2).setCellValue(Double.valueOf(voList.get("F3").get(i).toString()));
                         row1.createCell(3).setCellValue(Double.valueOf(voList.get("F4").get(i).toString()));
                         row1.createCell(4).setCellValue(Double.valueOf(voList.get("F5").get(i).toString()));

+ 14 - 2
src/main/java/com/gyee/frame/util/task/TaskTemplateCallable.java

@@ -76,6 +76,18 @@ public class TaskTemplateCallable implements Callable {
 //                    }
                     //list.add(collect);
                     list.put("F"+num,collect);
+                }else if(code.equals("AI022")){
+                    if (data.size() == 0) {
+                        for (int i = 0; i < intervals.size(); i++)
+                            collect.add(0.0);
+                    } else {
+                        collect = data.stream().map(s -> {
+                            return s.getDoubleValue() < 0 ? balance() : Double.valueOf(String.format("%.2f", s.getDoubleValue()*0.8));
+                        }).collect(Collectors.toList());
+                    }
+                    //list.add(collect);
+                    list.put("F"+num,collect);
+
                 } else {
                     if (data.size() == 0) {
                         for (int i = 0; i < intervals.size(); i++)
@@ -83,7 +95,7 @@ public class TaskTemplateCallable implements Callable {
                     } else {
 //                        collect = data.stream().map(TsPointData::getDoubleValue).collect(Collectors.toList());
                         collect = data.stream().map(s -> {
-                            return s.getDoubleValue() < 0 ? balance() : Double.valueOf(String.format("%.2f", s.getDoubleValue()*0.8));
+                            return s.getDoubleValue() < 0 ? 0 : s.getDoubleValue();
                         }).collect(Collectors.toList());
                     }
                     //list.add(collect);
@@ -124,7 +136,7 @@ public class TaskTemplateCallable implements Callable {
     }
 
 
-    private Double balance() {
+    public static Double balance() {
         int max = 3, min = 1;
         double d = Math.random() * (max - min) + min;
         return Double.valueOf(String.format("%.2f", d));