From a42a810052e04ea604bd3f0d80ea62110ed40577 Mon Sep 17 00:00:00 2001
From: jiang <1354748262@qq.com>
Date: 星期五, 26 一月 2024 09:30:08 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 jcdm-main/src/main/java/com/jcdm/main/da/opcuaconfig/cert/MethodName.java                                                 |    2 
 jcdm-main/src/main/java/com/jcdm/main/da/opcuaconfig/init/OpcusConfigInit.java                                            |    7 -
 jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/controller/BsOrderSchedulingController.java                      |   14 ++
 jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/service/IBsOrderSchedulingService.java                           |    2 
 jcdm-ui/src/views/dashboard/PieChart.vue                                                                                  |   33 +++--
 jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/IDaPassingStationCollectionService.java         |    2 
 jcdm-ui/src/api/main/bs/orderScheduling/orderScheduling.js                                                                |    7 +
 jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/controller/DaPassingStationCollectionController.java    |    9 +
 jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/impl/DaPassingStationCollectionServiceImpl.java |   71 +++++++++++
 jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/vo/DaPassingStationVO.java                              |   13 ++
 jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/vo/LineChartVO.java                                              |   15 ++
 jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/service/impl/BsOrderSchedulingServiceImpl.java                   |   59 +++++++++
 jcdm-ui/src/views/dashboard/LineChart.vue                                                                                 |   67 ++++-------
 jcdm-ui/src/api/main/da/passingStationCollection/passingStationCollection.js                                              |    8 +
 jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/domain/DaPassingStationCollection.java                  |    7 +
 jcdm-main/src/main/resources/mapper/da/opcuaconfig/DaOpcuaConfigMapper.xml                                                |    1 
 jcdm-ui/src/views/main/bs/formulaChild/index.vue                                                                          |    2 
 17 files changed, 253 insertions(+), 66 deletions(-)

diff --git a/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/controller/BsOrderSchedulingController.java b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/controller/BsOrderSchedulingController.java
index b65b7ee..1d65de6 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/controller/BsOrderSchedulingController.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/controller/BsOrderSchedulingController.java
@@ -4,7 +4,9 @@
 import java.util.List;
 import javax.servlet.http.HttpServletResponse;
 
+import com.jcdm.common.core.domain.R;
 import com.jcdm.common.utils.StringUtils;
+import com.jcdm.main.bs.orderScheduling.vo.LineChartVO;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -49,6 +51,18 @@
         return getDataTable(list);
     }
 
+    /**
+     * 鏌ヨ涓嬬嚎鏁伴噺
+     */
+    @PreAuthorize("@ss.hasPermi('bs:orderScheduling:list')")
+    @GetMapping("/getOffLineNum")
+    public TableDataInfo getOffLineNum(BsOrderScheduling bsOrderScheduling)
+    {
+
+        List<LineChartVO> vo = bsOrderSchedulingService.getOffLineNum();
+        return getDataTable(vo);
+    }
+
     @PreAuthorize("@ss.hasPermi('bs:orderScheduling:list')")
     @GetMapping("/list2")
     public TableDataInfo list2(BsOrderScheduling bsOrderScheduling)
diff --git a/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/service/IBsOrderSchedulingService.java b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/service/IBsOrderSchedulingService.java
index 37788ab..7f413db 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/service/IBsOrderSchedulingService.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/service/IBsOrderSchedulingService.java
@@ -2,6 +2,7 @@
 
 import java.util.List;
 import com.jcdm.main.bs.orderScheduling.domain.BsOrderScheduling;
+import com.jcdm.main.bs.orderScheduling.vo.LineChartVO;
 
 /**
  * 璁㈠崟鎺掍骇Service鎺ュ彛
@@ -26,6 +27,7 @@
      * @return 璁㈠崟鎺掍骇闆嗗悎
      */
     public List<BsOrderScheduling> selectBsOrderSchedulingList(BsOrderScheduling bsOrderScheduling);
+    public List<LineChartVO> getOffLineNum();
 
     /**
      * 鏂板璁㈠崟鎺掍骇
diff --git a/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/service/impl/BsOrderSchedulingServiceImpl.java b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/service/impl/BsOrderSchedulingServiceImpl.java
index 83b3669..94ad69c 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/service/impl/BsOrderSchedulingServiceImpl.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/service/impl/BsOrderSchedulingServiceImpl.java
@@ -1,14 +1,26 @@
 package com.jcdm.main.bs.orderScheduling.service.impl;
 
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.ObjectUtil;
 import com.jcdm.common.utils.DateUtils;
+import com.jcdm.common.utils.StringUtils;
 import com.jcdm.main.bs.orderScheduling.Query.PrepareOnlineQuery;
 import com.jcdm.main.bs.orderScheduling.domain.BsOrderScheduling;
 import com.jcdm.main.bs.orderScheduling.mapper.BsOrderSchedulingMapper;
 import com.jcdm.main.bs.orderScheduling.service.IBsOrderSchedulingService;
+import com.jcdm.main.bs.orderScheduling.vo.LineChartVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.text.SimpleDateFormat;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 
 /**
  * 璁㈠崟鎺掍骇Service涓氬姟灞傚鐞�
@@ -51,6 +63,53 @@
         return bsOrderSchedulingMapper.selectBsOrderSchedulingList(bsOrderScheduling);
     }
 
+    @Override
+    public List<LineChartVO> getOffLineNum()
+    {
+        List<LineChartVO> result = new ArrayList<>();
+        BsOrderScheduling bsOrderScheduling =  new BsOrderScheduling();
+        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+        LocalDateTime now = LocalDateTime.now();
+        LocalDateTime startTime = LocalDateTime.of(now.getYear(),now.getMonthValue(),now.getDayOfMonth(),8,0,0);
+        LocalDateTime endTime = LocalDateTime.of(now.getYear(),now.getMonthValue(),now.plusDays(1).getDayOfMonth(),22,0,0);
+        String s1 = startTime.format(formatter);
+        String s2 = endTime.format(formatter);
+        bsOrderScheduling.setStartTime(s1);
+        bsOrderScheduling.setEndTime(s2);
+        List<BsOrderScheduling> todayList = bsOrderSchedulingMapper.selectBsOrderSchedulingList(bsOrderScheduling);
+        todayList = todayList.stream().filter(x -> ObjectUtil.isNotEmpty(x.getCvtOfflineTime())).collect(Collectors.toList());
+        if (CollUtil.isNotEmpty(todayList)){
+            List<String> allModel = todayList.stream().map(BsOrderScheduling::getModel).distinct().collect(Collectors.toList());
+            Map<String, List<BsOrderScheduling>> collect = new HashMap<>();
+            for (String s : allModel) {
+                LineChartVO vo = new LineChartVO();
+                List<Integer> arr = new ArrayList<>();
+                vo.setName(s);
+                collect = todayList.stream().filter(x -> s.equals(x.getModel())).collect(Collectors.groupingBy(item -> new SimpleDateFormat("yyyy-MM-dd HH").format(item
+                        .getCvtOfflineTime())));
+                Map<Integer,Integer> temp = new HashMap<>();
+                if (CollUtil.isNotEmpty(collect)){
+                    for (String string : collect.keySet()) {
+                        int size = collect.get(string).size();
+                        String s3 = string.split(StringUtils.SPACE)[1];
+                        if (StringUtils.isNotEmpty(s3)){
+                            int i = Integer.parseInt(s3);
+                            temp.put(i,size);
+                        }
+                    }
+                }
+                for (int i = 8; i < 23; i++) {
+                    arr.add(temp.getOrDefault(i, 0));
+                }
+                vo.setData(arr);
+                vo.setType("line");
+                result.add(vo);
+            }
+
+        }
+        return result;
+    }
+
 
     /**
      * 鏌ヨ鍚堢涓婄嚎鍒楄〃
diff --git a/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/vo/LineChartVO.java b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/vo/LineChartVO.java
new file mode 100644
index 0000000..e5c57bd
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/bs/orderScheduling/vo/LineChartVO.java
@@ -0,0 +1,15 @@
+package com.jcdm.main.bs.orderScheduling.vo;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class LineChartVO {
+
+    private String name;
+
+    private String type;
+
+    private List<Integer> data;
+}
diff --git a/jcdm-main/src/main/java/com/jcdm/main/da/opcuaconfig/cert/MethodName.java b/jcdm-main/src/main/java/com/jcdm/main/da/opcuaconfig/cert/MethodName.java
index 1fe5a1e..e365959 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/da/opcuaconfig/cert/MethodName.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/da/opcuaconfig/cert/MethodName.java
@@ -25,7 +25,7 @@
     private IDaParamCollectionService daParamCollectionService = BeanUtils.getBean(IDaParamCollectionService.class);
     private IDaPassingStationCollectionService daPassingStationCollectionService = BeanUtils.getBean(IDaPassingStationCollectionService.class);
     private List<DataValue> s=null;
-    public void getSn(String Node, String value) throws Exception {
+    public void Transit(String Node, String value) throws Exception {
         log.info(Node+":"+value);
         String[] parts = Node.split("[.]");
         ClientHandler clientHandler=new ClientHandler();
diff --git a/jcdm-main/src/main/java/com/jcdm/main/da/opcuaconfig/init/OpcusConfigInit.java b/jcdm-main/src/main/java/com/jcdm/main/da/opcuaconfig/init/OpcusConfigInit.java
index 4bfa496..af8dde3 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/da/opcuaconfig/init/OpcusConfigInit.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/da/opcuaconfig/init/OpcusConfigInit.java
@@ -2,7 +2,6 @@
 
 import com.google.common.collect.Lists;
 import com.jcdm.main.da.opcuaconfig.client.ClientHandler;
-import com.jcdm.main.da.opcuaconfig.controller.DaOpcuaConfigController;
 import com.jcdm.main.da.opcuaconfig.domain.DaOpcuaConfig;
 import com.jcdm.main.da.opcuaconfig.domain.NodeEntity;
 import com.jcdm.main.da.opcuaconfig.service.IDaOpcuaConfigService;
@@ -10,10 +9,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.boot.CommandLineRunner;
 import org.springframework.stereotype.Component;
-
 import java.util.List;
-import java.util.stream.Collectors;
-import java.util.stream.Stream;
 
 @Component
 @Slf4j
@@ -40,9 +36,8 @@
                     return nodeEntity;
                 });
                 clientHandler.subscribe(NodeList);
-                log.info("鍒濆鍖朞PC璁㈤槄" + nodeslist.size() + "鏉★紒");
             }
-            log.info("绯荤粺鎻愮ず锛孫PCUA璁㈤槄鎴愬姛锛�");
+            log.info("OPCUA鍒濆鍖栨垚鍔燂紝骞跺畬鎴�"+ nodeslist.size() +"涓妭鐐硅闃�");
         } catch (Exception e) {
             e.printStackTrace();
             log.info("绯荤粺鎻愮ず锛孫PCUA璁㈤槄澶辫触锛�");
diff --git a/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/controller/DaPassingStationCollectionController.java b/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/controller/DaPassingStationCollectionController.java
index 6e67eda..8405255 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/controller/DaPassingStationCollectionController.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/controller/DaPassingStationCollectionController.java
@@ -8,6 +8,7 @@
 import com.jcdm.main.bs.orderScheduling.domain.BsOrderScheduling;
 import com.jcdm.main.da.passingStationCollection.domain.DaPassingStationCollection;
 import com.jcdm.main.da.passingStationCollection.service.IDaPassingStationCollectionService;
+import com.jcdm.main.da.passingStationCollection.vo.DaPassingStationVO;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -50,6 +51,14 @@
         return getDataTable(list);
     }
 
+    @PreAuthorize("@ss.hasPermi('da:passingStationCollection:list')")
+    @GetMapping("/getTopProcess")
+    public TableDataInfo getTopProcess()
+    {
+        DaPassingStationCollection daPassingStationCollection = new DaPassingStationCollection();
+        List<DaPassingStationVO> list = daPassingStationCollectionService.getTopProcess(daPassingStationCollection);
+        return getDataTable(list);
+    }
     /**
      * 鏌ヨ浜у搧杩囩珯閲囬泦鍒楄〃
      */
diff --git a/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/domain/DaPassingStationCollection.java b/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/domain/DaPassingStationCollection.java
index a61ca36..2a9ee55 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/domain/DaPassingStationCollection.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/domain/DaPassingStationCollection.java
@@ -1,7 +1,10 @@
 package com.jcdm.main.da.passingStationCollection.domain;
 
 import java.util.Date;
+
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
 import com.jcdm.common.annotation.Excel;
@@ -13,6 +16,7 @@
  * @author yyt
  * @date 2023-12-12
  */
+@Data
 public class DaPassingStationCollection extends BaseEntity
 {
     private static final long serialVersionUID = 1L;
@@ -91,6 +95,9 @@
     @Excel(name = "鑺傛媿鏃堕棿")
     private String beatTime;
 
+    @TableField(exist = false)
+    private Long beatTimeLong;
+
     private Long[] ids;
 
     public Long[] getIds() {
diff --git a/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/IDaPassingStationCollectionService.java b/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/IDaPassingStationCollectionService.java
index cb8845e..28ebf58 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/IDaPassingStationCollectionService.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/IDaPassingStationCollectionService.java
@@ -2,6 +2,7 @@
 
 import com.jcdm.main.bs.orderScheduling.domain.BsOrderScheduling;
 import com.jcdm.main.da.passingStationCollection.domain.DaPassingStationCollection;
+import com.jcdm.main.da.passingStationCollection.vo.DaPassingStationVO;
 
 import java.util.List;
 
@@ -28,6 +29,7 @@
      * @return 浜у搧杩囩珯閲囬泦闆嗗悎
      */
     public List<DaPassingStationCollection> selectDaPassingStationCollectionList(DaPassingStationCollection daPassingStationCollection);
+    public List<DaPassingStationVO> getTopProcess(DaPassingStationCollection daPassingStationCollection);
 
 
     /**
diff --git a/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/impl/DaPassingStationCollectionServiceImpl.java b/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/impl/DaPassingStationCollectionServiceImpl.java
index 3b5fbe4..8c46a12 100644
--- a/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/impl/DaPassingStationCollectionServiceImpl.java
+++ b/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/service/impl/DaPassingStationCollectionServiceImpl.java
@@ -1,19 +1,24 @@
 package com.jcdm.main.da.passingStationCollection.service.impl;
 
+import java.math.BigDecimal;
+import java.math.RoundingMode;
 import java.time.LocalDate;
 import java.time.LocalDateTime;
 import java.time.format.DateTimeFormatter;
-import java.util.ArrayList;
-import java.util.List;
+import java.util.*;
+import java.util.stream.Collectors;
 
+import cn.hutool.core.collection.CollUtil;
 import com.jcdm.common.constant.Constants;
 import com.jcdm.common.utils.DateUtils;
+import com.jcdm.common.utils.StringUtils;
 import com.jcdm.main.bs.orderScheduling.domain.BsOrderScheduling;
 import com.jcdm.main.bs.orderScheduling.mapper.BsOrderSchedulingMapper;
 import com.jcdm.main.bs.orderScheduling.service.IBsOrderSchedulingService;
 import com.jcdm.main.da.passingStationCollection.domain.DaPassingStationCollection;
 import com.jcdm.main.da.passingStationCollection.mapper.DaPassingStationCollectionMapper;
 import com.jcdm.main.da.passingStationCollection.service.IDaPassingStationCollectionService;
+import com.jcdm.main.da.passingStationCollection.vo.DaPassingStationVO;
 import com.jcdm.main.rm.repairRecord.domain.RmRepairRecord;
 import com.jcdm.main.rm.repairRecord.mapper.RmRepairRecordMapper;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -65,6 +70,68 @@
         return daPassingStationCollectionMapper.selectDaPassingStationCollectionList(daPassingStationCollection);
     }
 
+    @Override
+    public List<DaPassingStationVO> getTopProcess(DaPassingStationCollection daPassingStationCollection)
+    {
+
+        List<DaPassingStationVO> result = new ArrayList<>();
+        List<DaPassingStationCollection> list = daPassingStationCollectionMapper.selectDaPassingStationCollectionList(daPassingStationCollection);
+        //绛涢櫎鑺傛媿涓虹┖鐨勬暟鎹�
+        list = list.stream().filter(x -> StringUtils.isNotEmpty(x.getBeatTime())).collect(Collectors.toList());
+        //鍋氱瓫閫夋搷浣�
+        if (CollUtil.isNotEmpty(list)){
+            for (DaPassingStationCollection passingStationCollection : list) {
+                if (StringUtils.isNotEmpty(passingStationCollection.getBeatTime())){
+                    Long aLong = Long.valueOf(passingStationCollection.getBeatTime());
+                    passingStationCollection.setBeatTimeLong(aLong);
+                }else {
+                    passingStationCollection.setBeatTimeLong(0L);
+                }
+            }
+            Map<String, Double> collect = list.stream().collect(Collectors.groupingBy(DaPassingStationCollection::getLocationCode, Collectors.averagingLong(DaPassingStationCollection::getBeatTimeLong)));
+            //鎺掑簭
+            List<Map.Entry<String,Double>> entryList = new ArrayList<>(collect.entrySet());
+            Collections.sort(entryList, new Comparator<Map.Entry<String, Double>>() {
+                @Override
+                public int compare(Map.Entry<String, Double> o1, Map.Entry<String, Double> o2) {
+                    double v = o2.getValue() - o1.getValue();
+                    return (int) v;
+                }
+            });
+            LinkedHashMap<String, Double> linkedHashMap = new LinkedHashMap<String, Double>();
+            int i = 1;
+            double sum =  0;
+            for (Map.Entry<String,Double> e : entryList
+            ) {
+                if (i<6){
+                    sum = sum + e.getValue();
+                    linkedHashMap.put(e.getKey(),e.getValue());
+                    i++;
+                }
+
+            }
+            //璁$畻鏁版嵁
+            if (CollUtil.isNotEmpty(linkedHashMap)){
+                for (String s : linkedHashMap.keySet()) {
+                    DaPassingStationVO vo = new DaPassingStationVO();
+                    BigDecimal divide = BigDecimal.valueOf(linkedHashMap.get(s)).divide(BigDecimal.valueOf(sum),4, RoundingMode.HALF_UP);
+                    vo.setName(s);
+                    vo.setValue(divide);
+                    result.add(vo);
+                }
+            }
+
+//            Map<String, List<DaPassingStationCollection>> collect = list.stream().collect(Collectors.groupingBy(DaPassingStationCollection::getLocationCode));
+//            for (String key:collect.keySet()){
+//                List<DaPassingStationCollection> list1 = collect.get(key);
+//                if (CollUtil.isNotEmpty(list1)) {
+//                    Double collect1 = list1.stream().collect(Collectors.averagingLong(DaPassingStationCollection::getBeatTimeLong));
+//                }
+//            }
+        }
+        return result;
+    }
+
     /**
      * 鑾峰彇棣栭〉鍗曟棩绱閲忎骇鏁版嵁
      * @param fieldName bs
diff --git a/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/vo/DaPassingStationVO.java b/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/vo/DaPassingStationVO.java
new file mode 100644
index 0000000..d75b8c5
--- /dev/null
+++ b/jcdm-main/src/main/java/com/jcdm/main/da/passingStationCollection/vo/DaPassingStationVO.java
@@ -0,0 +1,13 @@
+package com.jcdm.main.da.passingStationCollection.vo;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+public class DaPassingStationVO {
+
+    private String name;
+
+    private BigDecimal value;
+}
diff --git a/jcdm-main/src/main/resources/mapper/da/opcuaconfig/DaOpcuaConfigMapper.xml b/jcdm-main/src/main/resources/mapper/da/opcuaconfig/DaOpcuaConfigMapper.xml
index 9832bf4..5c86bb8 100644
--- a/jcdm-main/src/main/resources/mapper/da/opcuaconfig/DaOpcuaConfigMapper.xml
+++ b/jcdm-main/src/main/resources/mapper/da/opcuaconfig/DaOpcuaConfigMapper.xml
@@ -25,6 +25,7 @@
             <if test="node != null  and node != ''"> and node = #{node}</if>
             <if test="rFunction != null  and rFunction != ''"> and r_function = #{rFunction}</if>
             <if test="process != null  and process != ''"> and process = #{process}</if>
+            <if test="subscribe != null  and subscribe != ''"> and subscribe = #{subscribe}</if>
             <if test="state != null "> and state = #{state}</if>
         </where>
     </select>
diff --git a/jcdm-ui/src/api/main/bs/orderScheduling/orderScheduling.js b/jcdm-ui/src/api/main/bs/orderScheduling/orderScheduling.js
index 6ab9b97..6081324 100644
--- a/jcdm-ui/src/api/main/bs/orderScheduling/orderScheduling.js
+++ b/jcdm-ui/src/api/main/bs/orderScheduling/orderScheduling.js
@@ -8,6 +8,13 @@
     params: query
   })
 }
+//鏌ヨ褰撳ぉ鐢熶骇鏁版嵁
+export function getOffLineNum() {
+  return request({
+    url: '/bs/orderScheduling/getOffLineNum',
+    method: 'get'
+  })
+}
 export function listOrderScheduling2(query) {
   return request({
     url: '/bs/orderScheduling/list2',
diff --git a/jcdm-ui/src/api/main/da/passingStationCollection/passingStationCollection.js b/jcdm-ui/src/api/main/da/passingStationCollection/passingStationCollection.js
index a253eab..12110e3 100644
--- a/jcdm-ui/src/api/main/da/passingStationCollection/passingStationCollection.js
+++ b/jcdm-ui/src/api/main/da/passingStationCollection/passingStationCollection.js
@@ -8,7 +8,13 @@
     params: query
   })
 }
-
+//鏌ヨ棣栭〉top浜旀暟鎹�
+export function getTopProcess() {
+  return request({
+    url: '/da/passingStationCollection/getTopProcess',
+    method: 'get'
+  })
+}
 // 涓嶅垎椤垫煡璇骇鍝佽繃绔欓噰闆嗗垪琛�
 export function noPageList(query) {
   return request({
diff --git a/jcdm-ui/src/views/dashboard/LineChart.vue b/jcdm-ui/src/views/dashboard/LineChart.vue
index 4ab1c09..37320d2 100644
--- a/jcdm-ui/src/views/dashboard/LineChart.vue
+++ b/jcdm-ui/src/views/dashboard/LineChart.vue
@@ -6,6 +6,7 @@
 import * as echarts from 'echarts'
 require('echarts/theme/macarons') // echarts theme
 import resize from './mixins/resize'
+import { getOffLineNum } from "@/api/main/bs/orderScheduling/orderScheduling";
 
 export default {
   mixins: [resize],
@@ -33,7 +34,9 @@
   },
   data() {
     return {
-      chart: null
+      chart: null,
+      data: [],
+      legendTitle: [],
     }
   },
   watch: {
@@ -45,9 +48,8 @@
     }
   },
   mounted() {
-    this.$nextTick(() => {
-      this.initChart()
-    })
+    this.getData()
+
   },
   beforeDestroy() {
     if (!this.chart) {
@@ -57,6 +59,19 @@
     this.chart = null
   },
   methods: {
+    getData(){
+      getOffLineNum().then(res => {
+        if (res.code === 200){
+          this.data = res.rows
+          this.data.forEach(x => {
+            this.legendTitle.push(x.name)
+          })
+          this.$nextTick(() => {
+            this.initChart()
+          })
+        }
+      })
+    },
     initChart() {
       this.chart = echarts.init(this.$el, 'macarons')
       this.setOptions(this.chartData)
@@ -68,7 +83,7 @@
           left: 'left' // 鏍囬浣嶇疆
         },
         xAxis: {
-          data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
+          data: ['8:00', '9:00', '10:00','11:00', '12:00', '13:00', '14:00', '15:00', '16:00', '17:00', '18:00', '19:00', '20:00','21:00','22:00'],
           boundaryGap: false,
           axisTick: {
             show: false
@@ -94,46 +109,12 @@
           }
         },
         legend: {
-          data: ['expected', 'actual']
+          data: this.legendTitle
         },
-        series: [{
-          name: 'expected', itemStyle: {
-            normal: {
-              color: '#FF005A',
-              lineStyle: {
-                color: '#FF005A',
-                width: 2
-              }
-            }
-          },
-          smooth: true,
-          type: 'line',
-          data: expectedData,
-          animationDuration: 2800,
-          animationEasing: 'cubicInOut'
-        },
-        {
-          name: 'actual',
-          smooth: true,
-          type: 'line',
-          itemStyle: {
-            normal: {
-              color: '#3888fa',
-              lineStyle: {
-                color: '#3888fa',
-                width: 2
-              },
-              areaStyle: {
-                color: '#f3f8ff'
-              }
-            }
-          },
-          data: actualData,
-          animationDuration: 2800,
-          animationEasing: 'quadraticOut'
-        }]
+        series: this.data
       })
     }
-  }
+  },
+
 }
 </script>
diff --git a/jcdm-ui/src/views/dashboard/PieChart.vue b/jcdm-ui/src/views/dashboard/PieChart.vue
index b831efc..35fb6af 100644
--- a/jcdm-ui/src/views/dashboard/PieChart.vue
+++ b/jcdm-ui/src/views/dashboard/PieChart.vue
@@ -6,6 +6,7 @@
 import * as echarts from 'echarts'
 require('echarts/theme/macarons') // echarts theme
 import resize from './mixins/resize'
+import { getTopProcess } from "@/api/main/da/passingStationCollection/passingStationCollection";
 
 export default {
   mixins: [resize],
@@ -25,13 +26,14 @@
   },
   data() {
     return {
-      chart: null
+      chart: null,
+      data: [],
+      title:[],
     }
   },
   mounted() {
-    this.$nextTick(() => {
-      this.initChart()
-    })
+    this.getData()
+
   },
   beforeDestroy() {
     if (!this.chart) {
@@ -41,6 +43,19 @@
     this.chart = null
   },
   methods: {
+    getData(){
+      getTopProcess().then(res => {
+        if (res.code === 200){
+          this.data = res.rows
+          this.data.forEach(x => {
+            this.title.push(x.name)
+          })
+          this.$nextTick(() => {
+            this.initChart()
+          })
+        }
+      })
+    },
     initChart() {
       this.chart = echarts.init(this.$el, 'macarons')
 
@@ -60,7 +75,7 @@
           left: 'left',
           // left: 'center',
           // bottom: '10',//宸︿晶楂樺害
-          data: ['OP460', 'OP090', 'OP660', 'OP650', 'OP730']
+          data: this.title
         },
         series: [
           {
@@ -72,13 +87,7 @@
             //   length: 10 // 璋冩暣鏍囩绾跨殑闀垮害
             // },
             center: ['50%', '60%'],
-            data: [
-              { value: 5, name: 'OP460' },
-              { value: 9, name: 'OP090' },
-              { value: 5, name: 'OP660' },
-              { value: 5, name: 'OP650' },
-              { value: 7, name: 'OP730' }
-            ],
+            data: this.data,
             label: {
               formatter: '{b}: {c} ({d}%)'
             },
diff --git a/jcdm-ui/src/views/main/bs/formulaChild/index.vue b/jcdm-ui/src/views/main/bs/formulaChild/index.vue
index 078864e..94ecc1b 100644
--- a/jcdm-ui/src/views/main/bs/formulaChild/index.vue
+++ b/jcdm-ui/src/views/main/bs/formulaChild/index.vue
@@ -236,7 +236,7 @@
           <el-input v-model="form.processesCode" placeholder="璇疯緭鍏ュ伐搴�" />
         </el-form-item>
         <el-form-item label="浜у搧缂栧彿" prop="productCode">
-          <el-input v-model="form.productCode" placeholder="璇疯緭鍏ヤ骇鍝佺紪鍙�" />
+          <el-input v-model="productCode" placeholder="璇疯緭鍏ヤ骇鍝佺紪鍙�" />
         </el-form-item>
         <el-form-item label="鎿嶄綔鍐呭" prop="operationSteps">
           <el-input v-model="form.operationSteps" placeholder="璇疯緭鍏ユ搷浣滃唴瀹�" />

--
Gitblit v1.9.3