From ac0a4b02c721c45a47e01a0ff091556912d66c3b Mon Sep 17 00:00:00 2001 From: qiaomu <3520484422@qq.com> Date: Wed, 16 Jul 2025 17:33:15 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E5=B7=A5=E4=BD=9C=E5=8F=B0?= =?UTF-8?q?=E5=92=8C=E9=A6=96=E9=A1=B5=E7=9A=84=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app.json | 3 +- components/DateTimePicker/index.js | 37 +++++++ components/DateTimePicker/index.json | 7 ++ components/DateTimePicker/index.wxml | 18 ++++ components/DateTimePicker/index.wxss | 1 + components/timePicker/index.js | 1 + pages/home/index.js | 6 ++ pages/home/index.wxml | 7 +- pages/home/index.wxss | 4 + pages/meterBalanceRecord/index.js | 98 +++++++++++++++++++ pages/meterBalanceRecord/index.json | 8 ++ pages/meterBalanceRecord/index.wxml | 22 +++++ pages/meterBalanceRecord/index.wxss | 26 +++++ pages/my/index.js | 30 ++++-- pages/my/index.wxml | 19 +++- pages/my/index.wxss | 3 + .../tenement/components/bindMeter/index.js | 29 ++++-- .../tenement/components/bindMeter/index.json | 3 +- .../tenement/components/bindMeter/index.wxml | 21 +++- .../tenement/components/unBindMeter/index.js | 20 +++- .../components/unBindMeter/index.json | 4 +- .../components/unBindMeter/index.wxml | 21 +++- pages/workBench/components/tenement/index.js | 3 + .../workBench/components/tenement/index.wxml | 2 +- utils/index.js | 4 +- 25 files changed, 368 insertions(+), 29 deletions(-) create mode 100644 components/DateTimePicker/index.js create mode 100644 components/DateTimePicker/index.json create mode 100644 components/DateTimePicker/index.wxml create mode 100644 components/DateTimePicker/index.wxss create mode 100644 pages/meterBalanceRecord/index.js create mode 100644 pages/meterBalanceRecord/index.json create mode 100644 pages/meterBalanceRecord/index.wxml create mode 100644 pages/meterBalanceRecord/index.wxss diff --git a/app.json b/app.json index 7a5d6ce..8562e5a 100644 --- a/app.json +++ b/app.json @@ -33,7 +33,8 @@ "pages/integralRecord/index", "pages/meterList/index", "pages/workBench/components/tenement/components/createTenement/index", - "pages/billMeterDetail/index" + "pages/billMeterDetail/index", + "pages/meterBalanceRecord/index" ], "subPackages": [ { diff --git a/components/DateTimePicker/index.js b/components/DateTimePicker/index.js new file mode 100644 index 0000000..4d57e85 --- /dev/null +++ b/components/DateTimePicker/index.js @@ -0,0 +1,37 @@ +// components/datePicker/index.js +import dayjs from "../../utils/dayjs" + +Component({ + + /** + * 组件的属性列表 + */ + properties: { + show: Boolean, + }, + + /** + * 组件的初始数据 + */ + data: { + currentDate: new Date().getTime(), + maxDate: new Date().getTime(), + minDate: new Date(2024, 1, 1).getTime(), + }, + lifetimes: { + attached() { + console.log("attached", this.data.show) + } + }, + /** + * 组件的方法列表 + */ + methods: { + onCancel() { + this.triggerEvent("cancel") + }, + onConfirm(e) { + this.triggerEvent("confirm", { time: dayjs(e.detail).format("YYYY-MM-DD HH:mm:ss") }) + } + } +}) \ No newline at end of file diff --git a/components/DateTimePicker/index.json b/components/DateTimePicker/index.json new file mode 100644 index 0000000..c3ceac7 --- /dev/null +++ b/components/DateTimePicker/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-popup": "@vant/weapp/popup/index", + "van-datetime-picker": "@vant/weapp/datetime-picker/index" + } +} \ No newline at end of file diff --git a/components/DateTimePicker/index.wxml b/components/DateTimePicker/index.wxml new file mode 100644 index 0000000..a9f405d --- /dev/null +++ b/components/DateTimePicker/index.wxml @@ -0,0 +1,18 @@ + + + + + + diff --git a/components/DateTimePicker/index.wxss b/components/DateTimePicker/index.wxss new file mode 100644 index 0000000..f025676 --- /dev/null +++ b/components/DateTimePicker/index.wxss @@ -0,0 +1 @@ +/* components/datePicker/index.wxss */ \ No newline at end of file diff --git a/components/timePicker/index.js b/components/timePicker/index.js index 093f07c..27ef8f1 100644 --- a/components/timePicker/index.js +++ b/components/timePicker/index.js @@ -23,6 +23,7 @@ Component({ year: String, month: Number, day: Number, + currentDate: Number, }, /** * 组件的初始数据 diff --git a/pages/home/index.js b/pages/home/index.js index 12760ed..cbea2c1 100644 --- a/pages/home/index.js +++ b/pages/home/index.js @@ -115,6 +115,12 @@ Page({ show: false, }) }, + jumpToMeterBalanceRecord(e) { + const id = e.currentTarget.dataset.id + wx.navigateTo({ + url: `/pages/meterBalanceRecord/index?id=${id}`, + }) + }, changeMoney(e) { const { money } = e.currentTarget.dataset; this.setData({ diff --git a/pages/home/index.wxml b/pages/home/index.wxml index dc81b19..a89aa84 100644 --- a/pages/home/index.wxml +++ b/pages/home/index.wxml @@ -60,7 +60,12 @@ 电表余额: - {{meter.money}} + {{meter.money}} --- + + + + 选择时间 + + + {{time}} + + + + + + + \ No newline at end of file diff --git a/pages/meterBalanceRecord/index.wxss b/pages/meterBalanceRecord/index.wxss new file mode 100644 index 0000000..de2bff8 --- /dev/null +++ b/pages/meterBalanceRecord/index.wxss @@ -0,0 +1,26 @@ +/* pages/meterBalanceRecord/index.wxss */ +.pageWrapper { + margin: 30rpx; +} + +.time { + flex: 1; + margin-left: 30rpx; + margin-right: 30rpx; + display: flex; + padding: 10rpx 20rpx; + border-radius: 12rpx; + border: 1rpx solid #ccc; + background-color: #fff; + } + + .timeChooseWrapper { + display: flex; + align-items: center; + font-size: 36rpx; + } + + + .timeText { + flex: 1; + } \ No newline at end of file diff --git a/pages/my/index.js b/pages/my/index.js index 1f3f353..e15b67b 100644 --- a/pages/my/index.js +++ b/pages/my/index.js @@ -144,15 +144,27 @@ Page({ }) }, connect() { - Dialog.alert({ - title: '提示', - message: '将进入咨询客服页面', - confirmButtonOpenType: "contact", - showCancelButton: true, - }).then(() => { - // on close - }); - + // Dialog.alert({ + // title: '提示', + // message: '将进入咨询客服页面', + // "confirm-button-open-type": "contact", + // showCancelButton: true, + // }).then(() => { + // // on close + // }); + this.setData({ + connectShow: true + }) + }, + bindConnect() { + this.setData({ + connectShow: false + }) + }, + bindCancelConnect() { + this.setData({ + connectShow: false + }) }, jumpToFinance() { wx.navigateTo({ diff --git a/pages/my/index.wxml b/pages/my/index.wxml index 5f675b8..5c0684b 100644 --- a/pages/my/index.wxml +++ b/pages/my/index.wxml @@ -69,6 +69,7 @@ /> + @@ -87,5 +88,19 @@ - - \ No newline at end of file + + + + + + + + diff --git a/pages/my/index.wxss b/pages/my/index.wxss index 95e91f8..94988c0 100644 --- a/pages/my/index.wxss +++ b/pages/my/index.wxss @@ -40,3 +40,6 @@ margin-top: 6rpx; } +.connect { + display: none; +} diff --git a/pages/workBench/components/tenement/components/bindMeter/index.js b/pages/workBench/components/tenement/components/bindMeter/index.js index 1261257..83ff8a3 100644 --- a/pages/workBench/components/tenement/components/bindMeter/index.js +++ b/pages/workBench/components/tenement/components/bindMeter/index.js @@ -23,7 +23,7 @@ Component({ * 组件的初始数据 */ data: { - + dateTimeShow: false, }, /** @@ -64,11 +64,19 @@ Component({ }) }, async onSubmit() { - const { overall, critical, peak, valley, park, tenement, meter } = this.data; - const { code, message } = await bindMeter(park, tenement, { code: meter, overall:overall? Number(overall) : overall, - critical : critical ? Number(critical) : critical, - peak: peak ? Number(peak) : peak, - valley : valley ? Number(valley) : valley, readAt: dayjs().format('YYYY-MM-DD HH:mm:ss') }) + const { overall, critical, peak, valley, park, tenement, meter, readAt } = this.data; + const { code, message } = await bindMeter( + park, + tenement, + { + code: meter, + overall:overall? Number(overall) : overall, + critical : critical ? Number(critical) : critical, + peak: peak ? Number(peak) : peak, + valley : valley ? Number(valley) : valley, + readAt: readAt || dayjs().format('YYYY-MM-DD HH:mm:ss') + } + ) if (code !== OK) { alertInfo(message) return; @@ -101,6 +109,15 @@ Component({ overall: Number(data?.overall || 0), status: data?.breakType ? '合闸' : "分闸" }) + }, + dateTimeConfirm(e) { + this.setData({ readAt: e.detail.time, dateTimeShow: false }) + }, + dateTimeCancal(e) { + this.setData({ dateTimeShow: false }) + }, + onTimeFocus() { + this.setData({ dateTimeShow: true }) } } }) \ No newline at end of file diff --git a/pages/workBench/components/tenement/components/bindMeter/index.json b/pages/workBench/components/tenement/components/bindMeter/index.json index b57afb9..3c2b870 100644 --- a/pages/workBench/components/tenement/components/bindMeter/index.json +++ b/pages/workBench/components/tenement/components/bindMeter/index.json @@ -4,6 +4,7 @@ "van-dialog": "@vant/weapp/dialog/index", "search-select": "/components/searchSelect/index", "van-field": "@vant/weapp/field/index", - "van-button": "@vant/weapp/button/index" + "van-button": "@vant/weapp/button/index", + "date-time-picker": "/components/DateTimePicker/index" } } \ No newline at end of file diff --git a/pages/workBench/components/tenement/components/bindMeter/index.wxml b/pages/workBench/components/tenement/components/bindMeter/index.wxml index 4a6c842..0e2ed30 100644 --- a/pages/workBench/components/tenement/components/bindMeter/index.wxml +++ b/pages/workBench/components/tenement/components/bindMeter/index.wxml @@ -38,6 +38,19 @@ readonly type="digit" /> + + + 选择 + + \ No newline at end of file +/> + + diff --git a/pages/workBench/components/tenement/components/unBindMeter/index.js b/pages/workBench/components/tenement/components/unBindMeter/index.js index 32d94ca..ebdda83 100644 --- a/pages/workBench/components/tenement/components/unBindMeter/index.js +++ b/pages/workBench/components/tenement/components/unBindMeter/index.js @@ -5,6 +5,7 @@ import request from "../../../../../../utils/request" import { alertInfo, alertSuccess } from "../../../../../../utils/index"; const { OK } = request import { getWorkMeterDetail } from "../../../../../../service/meter" +import dayjs from "../../../../../../utils/dayjs" Component({ @@ -28,7 +29,7 @@ Component({ * 组件的初始数据 */ data: { - + dateTimeShow: false }, /** @@ -68,13 +69,17 @@ Component({ }) }, async onSubmit() { - const { overall, critical, peak, valley, park, tenement, meterId } = this.data; - const { code, message, } = await unbindMeter(park, tenement, meterId, + const { overall, critical, peak, valley, park, tenement, meterId,readAt } = this.data; + const { code, message, } = await unbindMeter( + park, + tenement, + meterId, { overall:overall? Number(overall) : overall, critical : critical ? Number(critical) : critical, peak: peak ? Number(peak) : peak, valley : valley ? Number(valley) : valley, + readAt: readAt || dayjs().format('YYYY-MM-DD HH:mm:ss') }); if (code !== OK) { alertInfo(message) @@ -82,6 +87,15 @@ Component({ } alertSuccess("解绑成功") this.triggerEvent("ok") + }, + dateTimeConfirm(e) { + this.setData({ readAt: e.detail.time, dateTimeShow: false }) + }, + dateTimeCancal(e) { + this.setData({ dateTimeShow: false }) + }, + onTimeFocus() { + this.setData({ dateTimeShow: true }) } } }) \ No newline at end of file diff --git a/pages/workBench/components/tenement/components/unBindMeter/index.json b/pages/workBench/components/tenement/components/unBindMeter/index.json index 953d7ac..3c2b870 100644 --- a/pages/workBench/components/tenement/components/unBindMeter/index.json +++ b/pages/workBench/components/tenement/components/unBindMeter/index.json @@ -3,6 +3,8 @@ "usingComponents": { "van-dialog": "@vant/weapp/dialog/index", "search-select": "/components/searchSelect/index", - "van-field": "@vant/weapp/field/index" + "van-field": "@vant/weapp/field/index", + "van-button": "@vant/weapp/button/index", + "date-time-picker": "/components/DateTimePicker/index" } } \ No newline at end of file diff --git a/pages/workBench/components/tenement/components/unBindMeter/index.wxml b/pages/workBench/components/tenement/components/unBindMeter/index.wxml index 9bde749..7a9952f 100644 --- a/pages/workBench/components/tenement/components/unBindMeter/index.wxml +++ b/pages/workBench/components/tenement/components/unBindMeter/index.wxml @@ -26,6 +26,19 @@ title-width="132rpx" border="{{false}}" /> + + + 选择 + + - \ No newline at end of file + + + diff --git a/pages/workBench/components/tenement/index.js b/pages/workBench/components/tenement/index.js index 92f4ff4..07dc51f 100644 --- a/pages/workBench/components/tenement/index.js +++ b/pages/workBench/components/tenement/index.js @@ -183,6 +183,9 @@ Component({ bindVisible: false, }) this.getTenementMeters(); + }, + onTimeConfirm(e) { + console.log('e', e) } } }) \ No newline at end of file diff --git a/pages/workBench/components/tenement/index.wxml b/pages/workBench/components/tenement/index.wxml index eb96997..a073cb9 100644 --- a/pages/workBench/components/tenement/index.wxml +++ b/pages/workBench/components/tenement/index.wxml @@ -132,4 +132,4 @@ meterId="{{meterId}}" meterAddress="{{meterAddress}}" bind:ok="onUnbindOk" -/> \ No newline at end of file +/> diff --git a/utils/index.js b/utils/index.js index d2bfee7..e909304 100644 --- a/utils/index.js +++ b/utils/index.js @@ -45,8 +45,8 @@ export function getConfigByEnv() { switch (envVersion) { // 开发版 case 'develop': - // api = "http://localhost:8000" - api = "https://zgd.hbhcbn.com/api3" + api = "http://localhost:8000" + // api = "https://zgd.hbhcbn.com/api3" // api = "https://zgd.hbhcbn.com/wxApi" // api = "http://127.0.0.1:4523/m1/4143821-0-default" break;