import dayjs from 'dayjs';
|
import { useLoading } from '../../../behaviors/loading';
|
import { useProblemChangeList } from "./problem-change-list.js";
|
import { useStatistic } from "./statistic.js";
|
import { useSortOptions } from "./sort-options.js";
|
import { fetchSceneProSummary } from '../../../services/inspection/fetchScene';
|
import { fetchProblemsStatistic } from '../../../services/inspection/fetchInspection';
|
import { _getParamsArea } from '../param-util.js';
|
|
Page({
|
behaviors: [useLoading, useProblemChangeList, useStatistic, useSortOptions],
|
data: {
|
// summaryList: [],
|
// sort: '',
|
// sortBy: 'pro',
|
// statistic: {
|
// proNum: 0,
|
// changeNum: 0,
|
// },
|
},
|
|
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._startLoad();
|
});
|
},
|
|
onReachBottom() {
|
this._loadMore();
|
},
|
|
_fetchData(page) {
|
const params = _getParamsArea(this.data);
|
const f1 = this.fetchSceneProSummary(params, page);
|
const f2 = this.fetchProblems(params, page);
|
return Promise.all([f1, f2]).then(res => {
|
// 返回请求f1的分页信息
|
return res[0];
|
});
|
},
|
|
// fetchSceneProSummary(params, page) {
|
// const params = _getParamsArea(this.data);
|
// return fetchSceneProSummary({ area: params, page }).then(res => {
|
// if (res.success) {
|
// this.setData({
|
// summaryList: page == 1 ? res.data : this.data.summaryList.concat(res.data),
|
// });
|
// } else {
|
// this.setData({
|
// summaryList: [],
|
// });
|
// }
|
// return res.head;
|
// });
|
// },
|
|
// fetchProblems(params, page) {
|
// const params = _getParamsArea(this.data);
|
// return fetchProblemsStatistic(params).then(res => {
|
// let proNum = 0,
|
// changeNum = 0,
|
// changePer = 0;
|
// res.data.forEach(r => {
|
// proNum += r.count;
|
// changeNum += r.changeCount;
|
// });
|
// if (proNum > 0) {
|
// changePer = Math.round((changeNum / proNum) * 1000) / 10;
|
// changePer += '%';
|
// }
|
// this.setData({
|
// statistic: { proNum, changeNum, changePer },
|
// });
|
// return res.head;
|
// });
|
// },
|
|
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();
|
},
|
|
onSortChange(e) {
|
const { sorts } = e.detail;
|
const { type } = e.currentTarget.dataset;
|
this.setData({
|
sort: sorts,
|
sortBy: type,
|
proSort: type == 'pro' ? sorts : 'default',
|
changeSort: type == 'changePer' ? sorts : 'default',
|
});
|
this._startLoad();
|
},
|
|
// navToDetail(e) {
|
// const { index } = e.currentTarget.dataset;
|
// const summary = this.data.summaryList[index];
|
// wx.navigateTo({
|
// url: '/pages/inspection/detail/index',
|
// success: result => {
|
// result.eventChannel.emit('acceptInspectionDetailData', {
|
// scene: summary.scene,
|
// time: this.data.time,
|
// });
|
// },
|
// });
|
// },
|
});
|