Ver código fonte

解决小BUG

wukai 5 meses atrás
pai
commit
44bc79f10a

+ 3 - 1
ruoyi-admin/src/main/java/com/ruoyi/biz/controller/ApiController.java

@@ -774,7 +774,9 @@ public class ApiController extends BaseController {
                         ef = ef.add(calc.getEfficiency());
                     }
 //                    cells[3].setCellValue();
-                    cells[4].setCellValue(calc.getHeight().setScale(2, RoundingMode.HALF_UP).doubleValue());
+                    if (calc.getHeight() != null) {
+                        cells[4].setCellValue(calc.getHeight().setScale(2, RoundingMode.HALF_UP).doubleValue());
+                    }
                     cells[5].setCellValue(calc.getMick());
                     cells[6].setCellValue(calc.getDensity().setScale(2, RoundingMode.HALF_UP).doubleValue());
                     cells[6].setCellStyle(p2);

+ 5 - 2
ruoyi-admin/src/main/java/com/ruoyi/biz/service/impl/TwinEmpCalcServiceImpl.java

@@ -5,6 +5,7 @@ import com.ruoyi.biz.mapper.TwinEmpCalcMapper;
 import com.ruoyi.biz.service.*;
 import com.ruoyi.biz.tools.Tools;
 import com.ruoyi.common.core.text.Convert;
+import com.ruoyi.common.utils.StringUtils;
 import org.apache.ibatis.session.ExecutorType;
 import org.apache.ibatis.session.SqlSession;
 import org.apache.ibatis.session.SqlSessionFactory;
@@ -162,13 +163,15 @@ public class TwinEmpCalcServiceImpl implements ITwinEmpCalcService {
                     String[] temp = ss.split("-");
                     BigDecimal density = new BigDecimal(temp[0]).setScale(2, RoundingMode.HALF_UP);
                     Integer mick = Integer.parseInt(temp[1]);
-                    BigDecimal height = new BigDecimal(temp[2]).setScale(2, RoundingMode.HALF_UP);
                     TwinCalcDay td = calcMap.get(deviceId);
                     TwinEmpCalc calc = new TwinEmpCalc();
                     calc.setDeviceId(deviceId);
+                    if (StringUtils.isNotEmpty(temp[2])&&!"null".equals(temp[2])) {
+                        BigDecimal height = new BigDecimal(temp[2]).setScale(2, RoundingMode.HALF_UP);
+                        calc.setHeight(height);
+                    }
                     calc.setEfficiency(td.getEfficiencyA());
                     calc.setEmpDate(td.getTime());
-                    calc.setHeight(height);
                     BigDecimal length = resultMap.get(ss);
                     if (!flag) {
                         calc.setEfficiency(td.getEfficiencyB());

+ 8 - 1
ruoyi-admin/src/main/java/com/ruoyi/biz/task/TwinTask.java

@@ -40,6 +40,13 @@ public class TwinTask {
     }
 
     /**
+     * 计算上一个小时数据
+     */
+    public void energyL() {
+        taskService.calcLastEnergy();
+    }
+
+    /**
      * 统计昨日数据
      */
     public void day() {
@@ -71,7 +78,7 @@ public class TwinTask {
     /**
      * 能源日统计
      */
-    public void energy() {
+    public void energyD() {
         LocalDate localDate = LocalDate.now().minusDays(1);
         wsCalcService.calc(DateUtils.toDate(localDate));
     }