riku
2024-11-07 5036880fc037e5d112206b93a729f60be12bf8ab
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 { useLoading } from '../../behaviors/loading';
import { useProblems } from './problems-proxy.js';
import { useAnalysis } from './analysis-proxy.js';
import dayjs from 'dayjs';
 
Page({
  behaviors: [useLoading, useProblems, useAnalysis],
  data: {},
 
  onLoad(options) {
    this.getOpenerEventChannel().on('acceptInspectionData', data => {
      this.setData({
        location: {
          provinceText: data.inspection.provinceName,
          cityText: data.inspection.cityName,
          districtText: data.inspection.districtName,
          townText: data.inspection.townName,
        },
        inspection: data.inspection,
        time: data.time,
        sceneTypeText: data.sceneTypeText,
        sceneTypeValue: data.sceneTypeValue,
      });
      this.initFetch();
    });
    // this.refreshPieChart();
  },
 
  /**
   * 初始加载,当外部参数传入以及饼图初始化完成后,开始加载数据
   */
  initCount: 0,
  initFetch() {
    this.initCount++;
    if (this.initCount == 2) this._startLoad();
  },
 
  _fetchData(page) {
    const p1 = this.fetchProblems(page);
    return Promise.all([p1]).then(res => {
      return res[0];
    });
  },
 
  onTimePickerConfirm(e) {
    const { timeValue } = e.detail;
    this.setData({
      time: timeValue,
    });
    this._startLoad();
  },
  onLocationChange(e) {
    const { inspection } = this.data;
    inspection.provinceName = e.detail.provinceText;
    inspection.cityName = e.detail.cityText;
    inspection.districtName = e.detail.districtText;
    inspection.townName = e.detail.townText;
    inspection.provinceCode = e.detail.provinceValue;
    inspection.cityCode = e.detail.cityValue;
    inspection.districtCode = e.detail.districtValue;
    inspection.townCode = e.detail.townValue;
    inspection.locationValue = e.detail.locationValue;
    this.setData({ inspection });
    this._startLoad();
  },
  onScenePickerConfirm(e) {
    const { sceneText: sceneTypeText, sceneValue: sceneTypeValue } = e.detail;
    this.setData({ sceneTypeText, sceneTypeValue });
    this._startLoad();
  },
 
  _getParamsArea() {
    const { inspection, sceneTypeValue: scensetypeid, time } = this.data;
    const params = {
      provincecode: inspection.provinceCode,
      provincename: inspection.provinceName,
      citycode: inspection.cityCode,
      cityname: inspection.cityName,
      districtcode: inspection.districtCode,
      districtname: inspection.districtName,
      towncode: inspection.townCode,
      townname: inspection.townName,
    };
    params.scensetypeid = scensetypeid[0];
    const t = dayjs(time);
    params.starttime = t.startOf('month').format('YYYY-MM-DD HH:mm:ss');
    params.endtime = t.endOf('month').format('YYYY-MM-DD HH:mm:ss');
    return params;
  },
});