准备联调抄表记录
This commit is contained in:
		@@ -1,9 +1,12 @@
 | 
			
		||||
import { getReportDetail } from "../../../service/report";
 | 
			
		||||
import { alertInfo, alertSuccess, getPixelRatio } from "../../../utils/index";
 | 
			
		||||
import { alertInfo, alertSuccess, getPixelRatio, loadingFunc } from "../../../utils/index";
 | 
			
		||||
import request from '../../../utils/request'
 | 
			
		||||
import * as echarts from '../../components/echarts/echarts';
 | 
			
		||||
import { getRoundNumber } from "../../../utils/index"
 | 
			
		||||
const { OK } = request
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
// pages/billDetail/index.js
 | 
			
		||||
Page({
 | 
			
		||||
 | 
			
		||||
@@ -15,31 +18,34 @@ Page({
 | 
			
		||||
    time: "",
 | 
			
		||||
    detail: {},
 | 
			
		||||
    meters: [],
 | 
			
		||||
    header1: [
 | 
			
		||||
      { key: 'address', title: '电表地址' },
 | 
			
		||||
      { title: '起码',renderBody: (item) => { return item?.startNumber } },
 | 
			
		||||
      { title: '止码',renderBody: (item) => { return item?.endNumber } },
 | 
			
		||||
      { title: '倍率',renderBody: (item) => { return item?.displayRatio } },
 | 
			
		||||
    ],
 | 
			
		||||
    header2: [
 | 
			
		||||
      { title: '用电量', renderBody: (item) => item?.overall?.amount },
 | 
			
		||||
      { title: '线损电量',renderBody: (item) => item?.loss?.amount },
 | 
			
		||||
      { title: '公摊电量',renderBody: (item) => item?.publicAmount },
 | 
			
		||||
      { title: '合计电量',renderBody: (item) => { 
 | 
			
		||||
    // header1: [
 | 
			
		||||
    //   { key: 'address', title: '电表地址' },
 | 
			
		||||
    //   { title: '起码',renderBody: (item) => { return item?.startNumber } },
 | 
			
		||||
    //   { title: '止码',renderBody: (item) => { return item?.endNumber } },
 | 
			
		||||
    //   { title: '倍率',renderBody: (item) => { return item?.displayRatio } },
 | 
			
		||||
    // ],
 | 
			
		||||
    // header2: [
 | 
			
		||||
    //   { title: '用电量', renderBody: (item) => item?.overall?.amount },
 | 
			
		||||
    //   { title: '线损电量',renderBody: (item) => item?.loss?.amount },
 | 
			
		||||
    //   { title: '公摊电量',renderBody: (item) => item?.publicAmount },
 | 
			
		||||
    //   { title: '合计电量',renderBody: (item) => { 
 | 
			
		||||
        
 | 
			
		||||
      } },
 | 
			
		||||
    ]
 | 
			
		||||
    //   } },
 | 
			
		||||
    // ]
 | 
			
		||||
  },
 | 
			
		||||
 | 
			
		||||
  /**
 | 
			
		||||
   * 生命周期函数--监听页面加载
 | 
			
		||||
   */
 | 
			
		||||
  onLoad(options) {
 | 
			
		||||
    const { id, time } = options;
 | 
			
		||||
    this.init(id, time);
 | 
			
		||||
    const { id, time, tenement } = options;
 | 
			
		||||
    const that = this;
 | 
			
		||||
    loadingFunc(async () => {
 | 
			
		||||
      await that.init(id, time, tenement);
 | 
			
		||||
    })
 | 
			
		||||
  },
 | 
			
		||||
  async init(id, time) {
 | 
			
		||||
    const { code, message, detail, amount } = await getReportDetail(id)
 | 
			
		||||
  async init(id, time, tenement) {
 | 
			
		||||
    const { code, message, detail, amount } = await getReportDetail(id, tenement)
 | 
			
		||||
    if (code !== OK) {
 | 
			
		||||
      alertInfo(message)
 | 
			
		||||
      return;
 | 
			
		||||
@@ -50,45 +56,92 @@ Page({
 | 
			
		||||
      detail, 
 | 
			
		||||
      amount: amount,
 | 
			
		||||
      meters: detail?.meters?.map(item => {
 | 
			
		||||
        const finalAmount = Number(item?.overall?.amount || 0) + Number(item?.loss?.amount || 0) + Number(item?.publicAmount || 0)
 | 
			
		||||
        item.finalAmount = Number(finalAmount).toFixed(2)
 | 
			
		||||
        if (item?.loss?.amount) {
 | 
			
		||||
          item.loss.amount = getRoundNumber(Number(item.loss.amount))
 | 
			
		||||
        }
 | 
			
		||||
        // const finalAmount = Number(item?.overall?.amount || 0) + Number(item?.loss?.amount || 0) + Number(item?.publicAmount || 0)
 | 
			
		||||
        item.finalAmount = getRoundNumber(Number(item.finalAmount))
 | 
			
		||||
        return item;
 | 
			
		||||
      })
 | 
			
		||||
    })
 | 
			
		||||
    const option = {
 | 
			
		||||
      tooltip: {
 | 
			
		||||
        trigger: 'item'
 | 
			
		||||
      },
 | 
			
		||||
      legend: {
 | 
			
		||||
        top: 10,
 | 
			
		||||
        left: 'center'
 | 
			
		||||
      },
 | 
			
		||||
      label: {
 | 
			
		||||
        alignTo: 'edge',
 | 
			
		||||
        formatter: '{name|{b}}\n{value|{c} }',
 | 
			
		||||
        minMargin: 5,
 | 
			
		||||
        edgeDistance: 10,
 | 
			
		||||
        lineHeight: 15,
 | 
			
		||||
        rich: {
 | 
			
		||||
          time: {
 | 
			
		||||
            fontSize: 10,
 | 
			
		||||
            color: '#999'
 | 
			
		||||
    if (detail?.park?.meter04kvType === 0) {
 | 
			
		||||
      const option = {
 | 
			
		||||
        tooltip: {
 | 
			
		||||
          trigger: 'item'
 | 
			
		||||
        },
 | 
			
		||||
        legend: {
 | 
			
		||||
          top: 10,
 | 
			
		||||
          left: 'center'
 | 
			
		||||
        },
 | 
			
		||||
        label: {
 | 
			
		||||
          alignTo: 'edge',
 | 
			
		||||
          formatter: '{name|{b}}\n{value|{c} }',
 | 
			
		||||
          minMargin: 5,
 | 
			
		||||
          edgeDistance: 10,
 | 
			
		||||
          lineHeight: 15,
 | 
			
		||||
          rich: {
 | 
			
		||||
            time: {
 | 
			
		||||
              fontSize: 10,
 | 
			
		||||
              color: '#999'
 | 
			
		||||
            }
 | 
			
		||||
          }
 | 
			
		||||
        }
 | 
			
		||||
      },
 | 
			
		||||
      series: [
 | 
			
		||||
        {
 | 
			
		||||
          type: 'pie',
 | 
			
		||||
          radius: '50%',
 | 
			
		||||
          data: [
 | 
			
		||||
            { value: detail.comprehensive.lossAmount, name: '本期线损电量', itemStyle: { color: 'rgb(104,187,196)' } },
 | 
			
		||||
            { value: detail.comprehensive.consumption, name: '本期用电量', itemStyle: { color: 'rgb(80,135,236)' } },
 | 
			
		||||
  
 | 
			
		||||
          ],
 | 
			
		||||
        }
 | 
			
		||||
      ]
 | 
			
		||||
    };
 | 
			
		||||
    this.init_pieCharts(option);
 | 
			
		||||
        },
 | 
			
		||||
        series: [
 | 
			
		||||
          {
 | 
			
		||||
            type: 'pie',
 | 
			
		||||
            radius: '50%',
 | 
			
		||||
            data: [
 | 
			
		||||
              { value: detail.comprehensive.lossAmount, name: '线损电量', itemStyle: { color: 'rgb(104,187,196)' } },
 | 
			
		||||
              { value: detail.comprehensive.consumption, name: '电度电量', itemStyle: { color: 'rgb(80,135,236)' } },
 | 
			
		||||
    
 | 
			
		||||
            ],
 | 
			
		||||
          }
 | 
			
		||||
        ]
 | 
			
		||||
      };
 | 
			
		||||
      this.init_pieCharts(option);
 | 
			
		||||
    } else {
 | 
			
		||||
      // const option = {
 | 
			
		||||
      //   tooltip: {
 | 
			
		||||
      //     trigger: 'item'
 | 
			
		||||
      //   },
 | 
			
		||||
      //   legend: {
 | 
			
		||||
      //     top: 10,
 | 
			
		||||
      //     left: 'center'
 | 
			
		||||
      //   },
 | 
			
		||||
      //   label: {
 | 
			
		||||
      //     alignTo: 'edge',
 | 
			
		||||
      //     formatter: '{name|{b}}\n{value|{c} }',
 | 
			
		||||
      //     minMargin: 5,
 | 
			
		||||
      //     edgeDistance: 10,
 | 
			
		||||
      //     lineHeight: 15,
 | 
			
		||||
      //     rich: {
 | 
			
		||||
      //       time: {
 | 
			
		||||
      //         fontSize: 10,
 | 
			
		||||
      //         color: '#999'
 | 
			
		||||
      //       }
 | 
			
		||||
      //     }
 | 
			
		||||
      //   },
 | 
			
		||||
      //   series: [
 | 
			
		||||
      //     {
 | 
			
		||||
      //       type: 'pie',
 | 
			
		||||
      //       radius: '50%',
 | 
			
		||||
      //       data: [
 | 
			
		||||
      //         { 
 | 
			
		||||
      //           value: detail.comprehensive.lossAmount, 
 | 
			
		||||
      //           name: '线损电量', 
 | 
			
		||||
      //         },
 | 
			
		||||
      //         { 
 | 
			
		||||
      //           value: detail.comprehensive.consumption, 
 | 
			
		||||
      //           name: '电度电量', 
 | 
			
		||||
      //         },
 | 
			
		||||
    
 | 
			
		||||
      //       ],
 | 
			
		||||
      //     }
 | 
			
		||||
      //   ]
 | 
			
		||||
      // };
 | 
			
		||||
      // this.init_pieCharts(option);
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
    const that = this;
 | 
			
		||||
    wx.getSystemInfo({
 | 
			
		||||
      success: function (res) {
 | 
			
		||||
@@ -115,6 +168,12 @@ Page({
 | 
			
		||||
      return pieChart;
 | 
			
		||||
    });
 | 
			
		||||
  },
 | 
			
		||||
  jumpToDetail(e) {
 | 
			
		||||
    const { meter } = e.currentTarget.dataset;
 | 
			
		||||
    wx.navigateTo({
 | 
			
		||||
      url: '/pages/billMeterDetail/index?data=' + JSON.stringify(meter),
 | 
			
		||||
    })
 | 
			
		||||
  },
 | 
			
		||||
  download() {
 | 
			
		||||
    const { id: tenement } = wx.getStorageSync('tenement')
 | 
			
		||||
    const { id } = this.data;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user