Browse Source

首页实际可用理论查询

xusl 6 months ago
parent
commit
e6053640f7

+ 52 - 0
cpp-admin/src/main/java/com/cpp/web/controller/largeScreen/LargeScreenController.java

@@ -0,0 +1,52 @@
+package com.cpp.web.controller.largeScreen;
+
+import com.cpp.common.core.domain.R;
+import com.cpp.web.domain.station.PowerStationStatusData;
+import com.cpp.web.service.station.PowerStationStatusDataService;
+import com.cpp.web.utils.DateTimeUtil;
+import lombok.RequiredArgsConstructor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.math.BigDecimal;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+
+/**
+ * 大屏模块
+ *
+ * @author whc
+ * @date 2022-03-18 15:49:14
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("/largeScreenController")
+public class LargeScreenController {
+    @Autowired
+    PowerStationStatusDataService powerStationStatusDataService;
+
+    @GetMapping("/getBizData")
+    public R getBizData() {
+        Map bizDataMap = new HashMap();
+        // 获取首页实际功率、可用、理论
+        Date powerStationTime = DateTimeUtil.getMomentTimeFor5Minute(System.currentTimeMillis());
+        List<PowerStationStatusData> powerStationStatusDataList = powerStationStatusDataService.findByTimeBetween(powerStationTime,powerStationTime);
+        BigDecimal realSum = BigDecimal.ZERO;
+        BigDecimal ableSum = BigDecimal.ZERO;
+        BigDecimal theorySum = BigDecimal.ZERO;
+        for (PowerStationStatusData powerStationStatusData: powerStationStatusDataList){
+            realSum = realSum.add(powerStationStatusData.getRealValue());
+            ableSum = ableSum.add(powerStationStatusData.getAbleValue());
+            theorySum = theorySum.add(powerStationStatusData.getTheoryValue());
+        }
+        Map powerStationSumMap = new HashMap();
+        powerStationSumMap.put("realSum",realSum);
+        powerStationSumMap.put("ableSum",ableSum);
+        powerStationSumMap.put("theorySum",theorySum);
+        bizDataMap.put("powerStationSumMap",powerStationSumMap);
+        return R.ok(bizDataMap);
+    }
+}

+ 23 - 5
cpp-ui/src/views/largeScreen/index.vue

@@ -306,6 +306,7 @@ export default {
   components: {echartsMap},
   data() {
     return {
+      sysBizDataTimer: "",
       sysTime: '',
       sysInterval: null,
       outerVisible: false,
@@ -317,19 +318,19 @@ export default {
       tableDataAlarmBak: [],
       digitalDisk: [{
         name: '实际功率',
-        num: '13591'
+        num: '0'
       }, {
         name: '理论功率',
-        num: '13591'
+        num: '0'
       }, {
         name: '可用功率',
-        num: '13591'
+        num: '0'
       }, {
         name: '超短期预测功率',
-        num: '13591'
+        num: '0'
       }, {
         name: '短期预测功率',
-        num: '13591'
+        num: '0'
       }],
       totality: {
         number: 39,
@@ -404,11 +405,28 @@ export default {
     this.sysInterval = setInterval(function () {
       _this.sysTime = formatToDateTime(new Date())
     }, 1000)
+    if (this.sysBizDataTimer) {
+      clearInterval(this.sysBizDataTimer);
+    } else {
+      this.sysBizDataTimer = setInterval(() => {
+        this.getBizData(this);//再次加载数据,自己定义的方法
+      }, 60000);//每隔60秒刷新一次
+    }
   },
   destroyed() {
     clearInterval(this.sysInterval);
+    clearInterval(this.sysBizDataTimer);
   },
   methods: {
+    getBizData() {
+      this.$axios({url: '/largeScreenController/getBizData', method: 'get'}).then(response => {
+        let powerStationSumMap = response.data.powerStationSumMap
+        this.digitalDisk[0].num = powerStationSumMap.realSum + ''
+        this.digitalDisk[1].num = powerStationSumMap.theorySum + ''
+        this.digitalDisk[2].num = powerStationSumMap.ableSum + ''
+
+      })
+    },
     jumpRout() {
       this.$router.push({path: "/configManager/electricField"})
     },