用电查询支持尖峰平谷

This commit is contained in:
qiaomu 2025-05-12 17:31:24 +08:00
parent 4d665588ac
commit e637bbf8a8
4 changed files with 80 additions and 14 deletions

View File

@ -12,6 +12,7 @@ Component({
*/ */
properties: { properties: {
meter: String, meter: String,
ParkInfo: Object,
}, },
observers: { observers: {
'meter': function() { 'meter': function() {

View File

@ -66,6 +66,36 @@
border="{{ false }}" border="{{ false }}"
label="表字" label="表字"
readonly readonly
wx:if="{{parkInfo.category !== 1}}"
/>
<van-field
value="{{ readingDetail.critical }}"
border="{{ false }}"
label="表字(尖)"
readonly
wx:if="{{parkInfo.category === 1}}"
/>
<van-field
value="{{ readingDetail.peak }}"
border="{{ false }}"
label="表字(峰)"
readonly
wx:if="{{parkInfo.category === 1}}"
/>
<van-field
value="{{ readingDetail.flat }}"
border="{{ false }}"
label="表字(平)"
readonly
wx:if="{{parkInfo.category === 1}}"
/>
<van-field
value="{{ readingDetail.valley }}"
border="{{ false }}"
label="表字(谷)"
readonly
wx:if="{{parkInfo.category === 1}}"
/> />
</van-cell-group> </van-cell-group>
</view> </view>

View File

@ -37,14 +37,13 @@ Page({
valleyHeader: [ valleyHeader: [
// { key: 'address', title: '电表地址', renderBody: (item) => item.meter?.address }, // { key: 'address', title: '电表地址', renderBody: (item) => item.meter?.address },
{ title: '时间',renderBody: (item) => { return item.time } }, { title: '时间',renderBody: (item) => { return item.time } },
{ key: 'number', title: '尖' }, { key: 'critical', title: '尖' },
{ key: 'number', title: '峰' }, { key: 'peak', title: '峰' },
{ key: 'number', title: '平' }, { key: 'flat', title: '平' },
{ key: 'number', title: '谷' }, { key: 'valley', title: '谷' },
], ],
list: [], list: [],
visible: false, visible: false,
accountingList: [], accountingList: [],
electricNumber: 0, electricNumber: 0,
meterNumber: 0, meterNumber: 0,
@ -98,11 +97,13 @@ Page({
*/ */
onLoad(options) { onLoad(options) {
loadingFunc(async () => { loadingFunc(async () => {
await this.getMeters()
await this.getParkInfo()
await this.init() await this.init()
}) })
}, },
async init() { async init() {
const { queryType, timeType, meterId, year, yearMonth, yearMonthDay, page } = this.data; const { queryType, timeType, meterId, year, yearMonth, yearMonthDay, page, parkInfo } = this.data;
let time; let time;
switch(timeType) { switch(timeType) {
case 1: case 1:
@ -148,7 +149,7 @@ Page({
trigger: 'axis' trigger: 'axis'
}, },
legend: { legend: {
data: data?.map(item => item?.meter?.address), data: parkInfo?.category === 1 ? ["尖", "峰", "平", "谷"] : data?.map(item => item?.meter?.address),
}, },
grid: { grid: {
left: '3%', left: '3%',
@ -164,7 +165,28 @@ Page({
yAxis: { yAxis: {
type: 'value' type: 'value'
}, },
series: ids?.map(item => { series: parkInfo?.category === 1 ? [
{
name: "尖",
type: 'line',
data: data?.map(item => Number(item?.critical || 0))
},
{
name: "峰",
type: 'line',
data: data?.map(item => Number(item?.peak || 0))
},
{
name: "平",
type: 'line',
data: data?.map(item => Number(item?.flat || 0))
},
{
name: "谷",
type: 'line',
data: data?.map(item => Number(item?.valley || 0))
}
] : ids?.map(item => {
const element = data?.find(i => i?.meter?.id === item) const element = data?.find(i => i?.meter?.id === item)
const list = data?.filter(ele => ele?.meter?.id === item) const list = data?.filter(ele => ele?.meter?.id === item)
const newList = [...times].map(item => { const newList = [...times].map(item => {
@ -371,8 +393,7 @@ Page({
* 生命周期函数--监听页面显示 * 生命周期函数--监听页面显示
*/ */
onShow() { onShow() {
this.getMeters()
this.getParkInfo()
}, },
async getParkInfo() { async getParkInfo() {
const park = wx.getStorageSync('park'); const park = wx.getStorageSync('park');
@ -393,9 +414,17 @@ Page({
alertInfo(message) alertInfo(message)
return; return;
} }
this.setData({ const that = this;
return new Promise((resolve) => {
that.setData({
parkInfo: data parkInfo: data
}, () => {
resolve()
}) })
})
}, },
/** /**
* 生命周期函数--监听页面隐藏 * 生命周期函数--监听页面隐藏

View File

@ -85,7 +85,13 @@
list="{{list}}" list="{{list}}"
header="{{header}}" header="{{header}}"
totalPage="{{totalPage}}" totalPage="{{totalPage}}"
wx:if="{{parkInfo.category !== 1}}"
/>
<listTable
list="{{list}}"
header="{{valleyHeader}}"
totalPage="{{totalPage}}"
wx:if="{{parkInfo.category === 1}}"
/> />
</view> </view>
<view class="sum"> <view class="sum">
@ -93,7 +99,7 @@
</view> </view>
</view> </view>
<view wx:if="{{queryType === 1}}"> <view wx:if="{{queryType === 1}}">
<reading meter="{{meterId}}" /> <reading meter="{{meterId}}" parkInfo="{{parkInfo}}" />
</view> </view>
<view wx:if="{{queryType === 2}}"> <view wx:if="{{queryType === 2}}">
<view style="margin: 30rpx;"> <view style="margin: 30rpx;">