修改抄表路线问题

This commit is contained in:
2025-09-19 16:27:29 +08:00
parent d77af4b78f
commit 9b00bb3561
12 changed files with 79 additions and 53 deletions

View File

@@ -79,7 +79,8 @@ Component({
const { code, message } = await createReading(park, meter, { const { code, message } = await createReading(park, meter, {
overall: `${number}`, overall: `${number}`,
flat: `${number}`, flat: `${number}`,
readAt: time readAt: time,
source: 1,
}) })
if (code !== OK) { if (code !== OK) {
alertError(message) alertError(message)

View File

@@ -17,9 +17,9 @@
use-button-slot use-button-slot
title-width="100rpx" title-width="100rpx"
> >
<van-button slot="button" size="small" type="info" bind:click="onTimeFocus" wx:if="{{!idProps}}"> <!-- <van-button slot="button" size="small" type="info" bind:click="onTimeFocus" wx:if="{{!idProps}}">
选择 选择
</van-button> </van-button> -->
</van-field> </van-field>
<van-field <van-field
value="{{ number }}" value="{{ number }}"

View File

@@ -3,6 +3,7 @@ import { getMeterReadingRouteMeterDetail, getReadingList, deleteReading } from "
import request from "../../utils/request" import request from "../../utils/request"
import { alertInfo, alertSuccess, alertError, loadingFunc } from "../../utils/index" import { alertInfo, alertSuccess, alertError, loadingFunc } from "../../utils/index"
const { OK } = request; const { OK } = request;
import dayjs from "../../utils/dayjs"
Page({ Page({
/** /**
@@ -85,7 +86,8 @@ Page({
this.setData({ this.setData({
title: "新增记录", title: "新增记录",
visible: true, visible: true,
type: "create" type: "create",
time: dayjs().format("YYYY-MM-DD HH:mm:ss")
}) })
}, },
handleUpdate(e) { handleUpdate(e) {

View File

@@ -20,7 +20,13 @@ Component({
park: "", park: "",
parkName: "" parkName: ""
}, },
lifetimes: {
attached() {
if (this.data.parkName) {
this.init();
}
}
},
/** /**
* 组件的方法列表 * 组件的方法列表
*/ */

View File

@@ -25,37 +25,40 @@
<van-empty description="请先选择园区" wx:if="{{!park}}" /> <van-empty description="请先选择园区" wx:if="{{!park}}" />
<view wx:else> <view wx:else>
<van-cell <view wx:if="{{list.length}}">
wx:for="{{list}}" <van-cell
wx:key="id" wx:for="{{list}}"
title="{{item.readingRouteName}}" wx:key="id"
label="包含{{item.meterRoute}}个抄表点" title="{{item.readingRouteName}}"
> label="包含{{item.meterRoute}}个抄表点"
<view slot="right-icon"> >
<van-button <view slot="right-icon">
type="primary" <van-button
size="small" type="primary"
type="primary" size="small"
bind:tap="changeStartStatus" type="primary"
custom-style="margin-right: 20rpx;" bind:tap="changeStartStatus"
data-id="{{item.id}}" custom-style="margin-right: 20rpx;"
wx:if="{{item.status === 0}}" data-id="{{item.id}}"
> 开始抄表 </van-button> wx:if="{{item.status === 0}}"
<van-button > 开始抄表 </van-button>
type="primary" <van-button
size="small" type="primary"
bind:tap="jumpToReading" size="small"
data-id="{{item.id}}" bind:tap="jumpToReading"
custom-style="margin-right: 20rpx;" data-id="{{item.id}}"
wx:if="{{item.status === 1}}" custom-style="margin-right: 20rpx;"
> 去抄表 </van-button> wx:if="{{item.status === 1}}"
<van-button > 去抄表 </van-button>
size="small" <van-button
type="danger" size="small"
bind:tap="changeEndStatus" type="danger"
data-id="{{item.id}}" bind:tap="changeEndStatus"
wx:if="{{item.status === 1}}" data-id="{{item.id}}"
> 结束抄表 </van-button> wx:if="{{item.status === 1}}"
</view> > 结束抄表 </van-button>
</van-cell> </view>
</van-cell>
</view>
<empty wx:else bind:refresh="init" />
</view> </view>

View File

@@ -31,6 +31,9 @@ Component({
maxScrollLeft: newList?.length ? 220 * newList.length - (scrollWidth || 0) - 20 : 0, maxScrollLeft: newList?.length ? 220 * newList.length - (scrollWidth || 0) - 20 : 0,
}) })
} }
},
"finishNumber": function(newValue) {
console.log("finishNumber0000000000-----------", newValue)
} }
}, },
/** /**
@@ -55,8 +58,6 @@ Component({
scrollWidth: res?.[0]?.width || 0 scrollWidth: res?.[0]?.width || 0
}) })
}) })
} }
}, },
/** /**

View File

@@ -2,7 +2,7 @@
<view class="wrapper"> <view class="wrapper">
<view class="title"> <view class="title">
<text> 电表列表 (总计{{list.length}}块,已抄{{finishNumber}}块) </text> <text> 电表列表 (总计{{list.length}}块,已抄{{list.length - finishNumber}}块) </text>
</view> </view>
<view style="display: flex; align-items: center;margin-top: 20rpx;"> <view style="display: flex; align-items: center;margin-top: 20rpx;">
<van-icon name="arrow-left" size="50rpx" bind:tap="scrollLeft" /> <van-icon name="arrow-left" size="50rpx" bind:tap="scrollLeft" />

View File

@@ -3,6 +3,7 @@
import { createReading, checkReadingFinish, changeMeterRouteStatus } from "../../../../service/workBench" import { createReading, checkReadingFinish, changeMeterRouteStatus } from "../../../../service/workBench"
import { alertError, alertInfo, alertSuccess, wxModal } from "../../../../utils/index" import { alertError, alertInfo, alertSuccess, wxModal } from "../../../../utils/index"
import request from "../../../../utils/request" import request from "../../../../utils/request"
import dayjs from "../../../../utils/dayjs"
const { OK } = request const { OK } = request
Component({ Component({
@@ -21,6 +22,7 @@ Component({
if (!newValue) { if (!newValue) {
return; return;
} }
console.log("---------------");
this.checkFinish(newValue) this.checkFinish(newValue)
} }
}, },
@@ -28,7 +30,8 @@ Component({
* 组件的初始数据 * 组件的初始数据
*/ */
data: { data: {
currentNumber: null currentNumber: null,
diff: "-"
}, },
lifetimes: { lifetimes: {
attached() { attached() {
@@ -49,7 +52,8 @@ Component({
onChange(e) { onChange(e) {
this.setData({ this.setData({
currentNumber: e.detail, currentNumber: e.detail,
calcNumber: isNaN(e.detail) ? 0 : Number(e.detail) calcNumber: isNaN(Number(e.detail)) ? 0 : Number(e.detail),
diff: isNaN(Number(e.detail)) ? "-" : Number(e.detail) - this.data.meterInfo?.overall
}) })
}, },
handleClear() { handleClear() {
@@ -69,10 +73,12 @@ Component({
}, },
onPhotoFinish(e) { onPhotoFinish(e) {
const { number, success } = e.detail; const { number, success } = e.detail;
const { meterInfo } = this.data;
if (success) { if (success) {
this.setData({ this.setData({
currentNumber: `${Number(number)}`, currentNumber: `${Number(number)}`,
calcNumber: isNaN(number) ? 0 : Number(number) calcNumber: isNaN(Number(number)) ? 0 : Number(number),
diff: isNaN(Number(number)) ? "-" : (Number(number || 0) - Number(meterInfo.overall)).toFixed(2)
}) })
alertSuccess("获取成功") alertSuccess("获取成功")
} else { } else {
@@ -84,7 +90,9 @@ Component({
const { parkId, id } = meterInfo; const { parkId, id } = meterInfo;
const { code, message } = await createReading(parkId, id, { const { code, message } = await createReading(parkId, id, {
overall: `${currentNumber}`, overall: `${currentNumber}`,
flat: `${currentNumber}` flat: `${currentNumber}`,
readAt: dayjs().format("YYYY-MM-DD HH:mm:ss"),
source: 1,
}) })
if (code !== OK) { if (code !== OK) {
alertError(message) alertError(message)
@@ -107,6 +115,11 @@ Component({
if (res.confirm) { if (res.confirm) {
// await that.changeEndStatus() // await that.changeEndStatus()
wx.navigateBack() wx.navigateBack()
const pages = getCurrentPages();
const prevPage = pages[pages.length - 2];
if (prevPage.init){
prevPage.init()
}
} }
} }
}) })

View File

@@ -70,11 +70,11 @@
<view class="title"> <view class="title">
表字差 表字差
</view> </view>
<view class="rightNumber" wx:if="{{calcNumber - meterInfo.overall >= 0}}"> <view class="rightNumber" wx:if="{{diff >= 0}}">
{{(calcNumber || 0) - meterInfo.overall}} {{diff}}
</view> </view>
<view class="wrongNumber" wx:else> <view class="wrongNumber" wx:else>
{{(calcNumber || 0) - meterInfo.overall}} {{diff}}
</view> </view>
</view> </view>
<view class="operate"> <view class="operate">

View File

@@ -6,7 +6,7 @@
bind:changeMeterAndIndex="changeMeterAndIndex" bind:changeMeterAndIndex="changeMeterAndIndex"
active="{{active}}" active="{{active}}"
meterInfo="{{meterInfo}}" meterInfo="{{meterInfo}}"
finishNumber="{{onSetFinishNumber}}" finishNumber="{{finishNumber}}"
/> />
<meter-info meterInfo="{{meterInfo}}" /> <meter-info meterInfo="{{meterInfo}}" />
<reading-info <reading-info

View File

@@ -23,7 +23,7 @@ export const getMeterReadingRouteMeterDetail = async function(id) {
// 新建一条抄表记录 // 新建一条抄表记录
export const createReading = async function(park, code, data) { export const createReading = async function(park, code, data) {
return await POST(`/reading/${park}/${code}`, data); return await POST(`/reading/hand/${park}/${code}`, data);
} }