longyvfengyun
2024-03-25 4b6b56fc1cbd9f6be12a5bc439e496f29c4b51a1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
import {bmsAnalysisApi, bmsAnalysisTimeApi} from "@/api/analysis";
import {ref} from "vue";
 
/**
 * 查询bms数据分析
 * @return {{searchBmsAnalysis: (function(): Promise<*|{code: number, data: null, message: string}|undefined>), analysisType: Ref<UnwrapRef<number>>}}
 */
export const dataAnalysisModule = ()=>{
  const analysisType = ref(1);
  const searchBmsAnalysis = async (boxSn, startTime, endTime)=>{
    try {
      const res = await bmsAnalysisApi(analysisType.value, boxSn, startTime, endTime);
      return res.data;
    }catch (e) {
      console.log(e);
      return {
        code: 0,
        data: null,
        message: "数据请求失败,请联系管理员!"
      }
    }
  }
 
  return {
    analysisType,
    searchBmsAnalysis
  }
}
 
export const bmsAnalysisTimeModule = ()=>{
  const usefulTimeRangeList = ref([]);
 
  const getBmsAnalysisTime = async (type)=>{
    try {
      const res = await bmsAnalysisTimeApi(type);
      const rs = res.data;
      console.log(rs.data);
      if(rs.code ===1 && rs.data) {
        let data = rs.data;
        let list = [];
        for(let i=0; i<data.length; i++) {
          let item = data[i];
          console.log(list);
          let index = -1;
          for(let j=0; j<list.length; j++) {
            let itemJ = list[j];
            if(item.boxSn === itemJ.value) {
              index = j;
              break;
            }
          }
          const timeRange = new Date(item.startTime).format("yyyy-MM-dd hh:mm:ss")
            +"~"+new Date(item.endTime).format("yyyy-MM-dd hh:mm:ss")
          if(index === -1) {
            list.push({
              label: item.boxName,
              value: item.boxSn,
              children: [
                {
                  value: timeRange,
                  label: timeRange
                }
              ]
            });
          }else {
            list[index].children.push({
              value: timeRange,
              label: timeRange
            });
          }
        }
        console.log(list);
        usefulTimeRangeList.value = list;
      }
      return res.data;
    }catch (e) {
      console.log(e);
      return {
        code: 0,
        data: null,
        message: "数据请求失败,请联系管理员!"
      }
    }
  }
 
  return {
    usefulTimeRangeList,
    getBmsAnalysisTime
  }
}