From 893a2a55c6ba38373eb40ffa3ee3744a87a915b9 Mon Sep 17 00:00:00 2001
From: ISFP_T <68358856@qq.com>
Date: Tue, 8 Jul 2025 09:03:06 +0800
Subject: [PATCH] =?UTF-8?q?fix:=E6=9B=BF=E6=8D=A2appID=E4=B8=BA7a9?=
=?UTF-8?q?=EF=BC=8C=E4=BF=AE=E5=A4=8D=E6=94=AF=E4=BB=98=E5=88=86=E8=B0=83?=
=?UTF-8?q?=E7=94=A8=E5=A4=B1=E8=B4=A5=E8=AE=A2=E5=8D=95=E6=97=A0=E6=B3=95?=
=?UTF-8?q?=E6=AD=A3=E7=A1=AE=E5=8F=96=E6=B6=88=E7=9A=84=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
App.vue | 1 -
config/http.js | 7 +--
config/url.js | 2 +-
config/user.js | 12 ++--
manifest.json | 2 +-
pages/device/detail.vue | 56 +++++++++++++------
pages/index/index.vue | 12 +++-
pages/order/index.vue | 12 ++--
unpackage/dist/build/mp-weixin/app.js | 2 +-
unpackage/dist/build/mp-weixin/app.wxss | 2 +-
unpackage/dist/build/mp-weixin/config/http.js | 2 +-
unpackage/dist/build/mp-weixin/config/url.js | 2 +-
unpackage/dist/build/mp-weixin/config/user.js | 2 +-
.../build/mp-weixin/pages/device/detail.js | 2 +-
.../build/mp-weixin/pages/device/detail.wxml | 2 +-
.../build/mp-weixin/pages/device/detail.wxss | 2 +-
.../dist/build/mp-weixin/pages/index/index.js | 2 +-
.../build/mp-weixin/pages/index/index.wxml | 2 +-
.../build/mp-weixin/pages/index/index.wxss | 2 +-
.../dist/build/mp-weixin/pages/order/index.js | 2 +-
.../build/mp-weixin/pages/order/index.wxml | 2 +-
.../build/mp-weixin/pages/order/index.wxss | 2 +-
.../dist/build/mp-weixin/project.config.json | 2 +-
unpackage/dist/build/mp-weixin/util/index.js | 2 +-
.../build/mp-weixin/utils/orderMonitor.js | 2 +-
.../dist/dev/.sourcemap/mp-weixin/app.js.map | 2 +-
.../.sourcemap/mp-weixin/config/http.js.map | 2 +-
.../.sourcemap/mp-weixin/config/url.js.map | 2 +-
.../.sourcemap/mp-weixin/config/user.js.map | 2 +-
.../mp-weixin/pages/device/detail.js.map | 2 +-
.../mp-weixin/pages/index/index.js.map | 2 +-
.../mp-weixin/pages/order/index.js.map | 2 +-
.../.sourcemap/mp-weixin/util/index.js.map | 2 +-
.../mp-weixin/utils/orderMonitor.js.map | 2 +-
unpackage/dist/dev/mp-weixin/app.js | 3 +-
unpackage/dist/dev/mp-weixin/common/vendor.js | 2 +-
unpackage/dist/dev/mp-weixin/config/http.js | 8 +--
unpackage/dist/dev/mp-weixin/config/url.js | 2 +-
unpackage/dist/dev/mp-weixin/config/user.js | 4 +-
.../dist/dev/mp-weixin/pages/device/detail.js | 44 ++++++++++-----
.../dev/mp-weixin/pages/device/detail.wxss | 6 +-
.../dist/dev/mp-weixin/pages/index/index.js | 28 +++++-----
.../dist/dev/mp-weixin/pages/index/index.wxml | 2 +-
.../dist/dev/mp-weixin/pages/index/index.wxss | 1 -
.../dist/dev/mp-weixin/pages/order/index.js | 31 ++--------
.../dist/dev/mp-weixin/pages/order/index.wxml | 2 +-
.../dist/dev/mp-weixin/project.config.json | 2 +-
unpackage/dist/dev/mp-weixin/util/index.js | 5 +-
.../dist/dev/mp-weixin/utils/orderMonitor.js | 2 -
util/index.js | 3 +-
utils/orderMonitor.js | 4 +-
51 files changed, 157 insertions(+), 148 deletions(-)
diff --git a/App.vue b/App.vue
index 2e8a907..9baab65 100644
--- a/App.vue
+++ b/App.vue
@@ -25,7 +25,6 @@
async autoLogin() {
try {
const loginResult = await wxLogin()
- console.log('自动登录成功:', loginResult)
// await getUserInfo()
} catch (error) {
console.error('自动登录失败:', error)
diff --git a/config/http.js b/config/http.js
index fa43e4c..1b70aaa 100644
--- a/config/http.js
+++ b/config/http.js
@@ -5,9 +5,7 @@ import {
const request = (option) => {
return new Promise((resolve, reject) => {
- // Debug request info
- console.log(`发起请求: ${option.method} ${URL + option.url}`, option.data)
-
+
// 默认不显示加载中提示
if (!option.hideLoading) {
uni.showLoading({
@@ -28,8 +26,7 @@ const request = (option) => {
'Clientid': uni.getStorageSync('client_id')
},
success(res) {
- // 记录响应
- console.log(`请求响应: ${option.url}`, res)
+
// 检查响应状态码
if (res.statusCode !== 200) {
diff --git a/config/url.js b/config/url.js
index 9d648bc..a59f049 100644
--- a/config/url.js
+++ b/config/url.js
@@ -2,4 +2,4 @@
export const URL = "https://unifans.gxfs123.com/api" //测试服务器
// export const URL = "http://192.168.10.60:8080" //本地调试
-export const appid = "wxe752f45e7f7aa271" //小程序appid
\ No newline at end of file
+export const appid = "wx2165f0be356ae7a9" //小程序appid
\ No newline at end of file
diff --git a/config/user.js b/config/user.js
index 00a48c4..1b833fd 100644
--- a/config/user.js
+++ b/config/user.js
@@ -89,11 +89,11 @@ export const queryById = (id) => {
//取消订单
export const cancelOrder = (data) => {
- return request({
- url: '/orderInfo/cancelOrder',
- method: 'get',
- data,
- })
+ return request({
+ url: `/device/order/clear/${data.orderId}`,
+ method: 'get',
+ data,
+ })
}
@@ -120,7 +120,7 @@ export const confirmPaymentAndRent = (orderId) => {
console.log(`确认支付并弹出风扇, orderId: ${orderId}`)
return request({
url: `/app/device/confirmPaymentAndRent?orderId=${orderId}`,
- method: 'post'
+ method: 'GET'
})
}
diff --git a/manifest.json b/manifest.json
index 055de2a..9173d92 100644
--- a/manifest.json
+++ b/manifest.json
@@ -50,7 +50,7 @@
"quickapp" : {},
/* 小程序特有相关 */
"mp-weixin" : {
- "appid" : "wxe752f45e7f7aa271",
+ "appid" : "wx2165f0be356ae7a9",
"setting" : {
"urlCheck" : false
},
diff --git a/pages/device/detail.vue b/pages/device/detail.vue
index 289cf25..8da0bb4 100644
--- a/pages/device/detail.vue
+++ b/pages/device/detail.vue
@@ -73,7 +73,7 @@
-
-
同步状态
-
+ -->
@@ -312,7 +312,7 @@
title: '处理中'
});
- const res = await confirmPaymentAndRent(order.orderId);
+ const res = await confirmPaymentAndRent(order.orderNo);
if (res.code === 200) {
uni.hideLoading();
uni.showToast({
@@ -347,10 +347,10 @@
});
const result = await cancelOrder({
- orderId: order.orderId
+ orderId: order.orderNo
});
- if (result.code === 200) {
+ if (result) {
uni.hideLoading();
uni.showToast({
title: '订单已取消',
@@ -358,7 +358,7 @@
});
// 刷新订单列表
- await loadOrderList(orderStatusTabs[currentTab.value].status);
+ await loadOrderList();
} else {
throw new Error(result.msg || '取消订单失败');
}
diff --git a/unpackage/dist/build/mp-weixin/app.js b/unpackage/dist/build/mp-weixin/app.js
index 405b683..3e3172c 100644
--- a/unpackage/dist/build/mp-weixin/app.js
+++ b/unpackage/dist/build/mp-weixin/app.js
@@ -1 +1 @@
-"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./common/vendor.js"),n=require("./util/index.js"),e=require("./utils/orderMonitor.js");Math;const t={onLaunch:function(){console.log("App Launch")},onShow:async function(){console.log("App Show"),await this.autoLogin()},onHide:function(){console.log("App Hide")},methods:{async autoLogin(){try{const o=await n.wxLogin();console.log("自动登录成功:",o)}catch(o){console.error("自动登录失败:",o)}}}};function r(){const n=o.createSSRApp(t);return n.config.globalProperties.$orderMonitor=e.orderMonitor,{app:n}}r().app.mount("#app"),exports.createApp=r;
+"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./common/vendor.js"),n=require("./util/index.js"),e=require("./utils/orderMonitor.js");Math;const t={onLaunch:function(){console.log("App Launch")},onShow:async function(){console.log("App Show"),await this.autoLogin()},onHide:function(){console.log("App Hide")},methods:{async autoLogin(){try{await n.wxLogin()}catch(o){console.error("自动登录失败:",o)}}}};function r(){const n=o.createSSRApp(t);return n.config.globalProperties.$orderMonitor=e.orderMonitor,{app:n}}r().app.mount("#app"),exports.createApp=r;
diff --git a/unpackage/dist/build/mp-weixin/app.wxss b/unpackage/dist/build/mp-weixin/app.wxss
index a47197a..0ecd28a 100644
--- a/unpackage/dist/build/mp-weixin/app.wxss
+++ b/unpackage/dist/build/mp-weixin/app.wxss
@@ -1,2 +1,2 @@
.u-relative,.u-rela{position:relative}.u-absolute,.u-abso{position:absolute}image{display:inline-block}view,text{box-sizing:border-box}.u-font-xs{font-size:22rpx}.u-font-sm{font-size:26rpx}.u-font-md{font-size:28rpx}.u-font-lg{font-size:30rpx}.u-font-xl{font-size:34rpx}.u-flex{display:flex;flex-direction:row;align-items:center}.u-flex-wrap{flex-wrap:wrap}.u-flex-nowrap{flex-wrap:nowrap}.u-col-center{align-items:center}.u-col-top{align-items:flex-start}.u-col-bottom{align-items:flex-end}.u-row-center{justify-content:center}.u-row-left{justify-content:flex-start}.u-row-right{justify-content:flex-end}.u-row-between{justify-content:space-between}.u-row-around{justify-content:space-around}.u-text-left{text-align:left}.u-text-center{text-align:center}.u-text-right{text-align:right}.u-flex-col{display:flex;flex-direction:column}.u-flex-0{flex:0}.u-flex-1{flex:1}.u-flex-2{flex:2}.u-flex-3{flex:3}.u-flex-4{flex:4}.u-flex-5{flex:5}.u-flex-6{flex:6}.u-flex-7{flex:7}.u-flex-8{flex:8}.u-flex-9{flex:9}.u-flex-10{flex:10}.u-flex-11{flex:11}.u-flex-12{flex:12}.u-font-9{font-size:9px}.u-font-10{font-size:10px}.u-font-11{font-size:11px}.u-font-12{font-size:12px}.u-font-13{font-size:13px}.u-font-14{font-size:14px}.u-font-15{font-size:15px}.u-font-16{font-size:16px}.u-font-17{font-size:17px}.u-font-18{font-size:18px}.u-font-19{font-size:19px}.u-font-20{font-size:20rpx}.u-font-21{font-size:21rpx}.u-font-22{font-size:22rpx}.u-font-23{font-size:23rpx}.u-font-24{font-size:24rpx}.u-font-25{font-size:25rpx}.u-font-26{font-size:26rpx}.u-font-27{font-size:27rpx}.u-font-28{font-size:28rpx}.u-font-29{font-size:29rpx}.u-font-30{font-size:30rpx}.u-font-31{font-size:31rpx}.u-font-32{font-size:32rpx}.u-font-33{font-size:33rpx}.u-font-34{font-size:34rpx}.u-font-35{font-size:35rpx}.u-font-36{font-size:36rpx}.u-font-37{font-size:37rpx}.u-font-38{font-size:38rpx}.u-font-39{font-size:39rpx}.u-font-40{font-size:40rpx}.u-margin-0,.u-m-0{margin:0rpx!important}.u-padding-0,.u-p-0{padding:0rpx!important}.u-m-l-0{margin-left:0rpx!important}.u-p-l-0{padding-left:0rpx!important}.u-margin-left-0{margin-left:0rpx!important}.u-padding-left-0{padding-left:0rpx!important}.u-m-t-0{margin-top:0rpx!important}.u-p-t-0{padding-top:0rpx!important}.u-margin-top-0{margin-top:0rpx!important}.u-padding-top-0{padding-top:0rpx!important}.u-m-r-0{margin-right:0rpx!important}.u-p-r-0{padding-right:0rpx!important}.u-margin-right-0{margin-right:0rpx!important}.u-padding-right-0{padding-right:0rpx!important}.u-m-b-0{margin-bottom:0rpx!important}.u-p-b-0{padding-bottom:0rpx!important}.u-margin-bottom-0{margin-bottom:0rpx!important}.u-padding-bottom-0{padding-bottom:0rpx!important}.u-margin-2,.u-m-2{margin:2rpx!important}.u-padding-2,.u-p-2{padding:2rpx!important}.u-m-l-2{margin-left:2rpx!important}.u-p-l-2{padding-left:2rpx!important}.u-margin-left-2{margin-left:2rpx!important}.u-padding-left-2{padding-left:2rpx!important}.u-m-t-2{margin-top:2rpx!important}.u-p-t-2{padding-top:2rpx!important}.u-margin-top-2{margin-top:2rpx!important}.u-padding-top-2{padding-top:2rpx!important}.u-m-r-2{margin-right:2rpx!important}.u-p-r-2{padding-right:2rpx!important}.u-margin-right-2{margin-right:2rpx!important}.u-padding-right-2{padding-right:2rpx!important}.u-m-b-2{margin-bottom:2rpx!important}.u-p-b-2{padding-bottom:2rpx!important}.u-margin-bottom-2{margin-bottom:2rpx!important}.u-padding-bottom-2{padding-bottom:2rpx!important}.u-margin-4,.u-m-4{margin:4rpx!important}.u-padding-4,.u-p-4{padding:4rpx!important}.u-m-l-4{margin-left:4rpx!important}.u-p-l-4{padding-left:4rpx!important}.u-margin-left-4{margin-left:4rpx!important}.u-padding-left-4{padding-left:4rpx!important}.u-m-t-4{margin-top:4rpx!important}.u-p-t-4{padding-top:4rpx!important}.u-margin-top-4{margin-top:4rpx!important}.u-padding-top-4{padding-top:4rpx!important}.u-m-r-4{margin-right:4rpx!important}.u-p-r-4{padding-right:4rpx!important}.u-margin-right-4{margin-right:4rpx!important}.u-padding-right-4{padding-right:4rpx!important}.u-m-b-4{margin-bottom:4rpx!important}.u-p-b-4{padding-bottom:4rpx!important}.u-margin-bottom-4{margin-bottom:4rpx!important}.u-padding-bottom-4{padding-bottom:4rpx!important}.u-margin-5,.u-m-5{margin:5rpx!important}.u-padding-5,.u-p-5{padding:5rpx!important}.u-m-l-5{margin-left:5rpx!important}.u-p-l-5{padding-left:5rpx!important}.u-margin-left-5{margin-left:5rpx!important}.u-padding-left-5{padding-left:5rpx!important}.u-m-t-5{margin-top:5rpx!important}.u-p-t-5{padding-top:5rpx!important}.u-margin-top-5{margin-top:5rpx!important}.u-padding-top-5{padding-top:5rpx!important}.u-m-r-5{margin-right:5rpx!important}.u-p-r-5{padding-right:5rpx!important}.u-margin-right-5{margin-right:5rpx!important}.u-padding-right-5{padding-right:5rpx!important}.u-m-b-5{margin-bottom:5rpx!important}.u-p-b-5{padding-bottom:5rpx!important}.u-margin-bottom-5{margin-bottom:5rpx!important}.u-padding-bottom-5{padding-bottom:5rpx!important}.u-margin-6,.u-m-6{margin:6rpx!important}.u-padding-6,.u-p-6{padding:6rpx!important}.u-m-l-6{margin-left:6rpx!important}.u-p-l-6{padding-left:6rpx!important}.u-margin-left-6{margin-left:6rpx!important}.u-padding-left-6{padding-left:6rpx!important}.u-m-t-6{margin-top:6rpx!important}.u-p-t-6{padding-top:6rpx!important}.u-margin-top-6{margin-top:6rpx!important}.u-padding-top-6{padding-top:6rpx!important}.u-m-r-6{margin-right:6rpx!important}.u-p-r-6{padding-right:6rpx!important}.u-margin-right-6{margin-right:6rpx!important}.u-padding-right-6{padding-right:6rpx!important}.u-m-b-6{margin-bottom:6rpx!important}.u-p-b-6{padding-bottom:6rpx!important}.u-margin-bottom-6{margin-bottom:6rpx!important}.u-padding-bottom-6{padding-bottom:6rpx!important}.u-margin-8,.u-m-8{margin:8rpx!important}.u-padding-8,.u-p-8{padding:8rpx!important}.u-m-l-8{margin-left:8rpx!important}.u-p-l-8{padding-left:8rpx!important}.u-margin-left-8{margin-left:8rpx!important}.u-padding-left-8{padding-left:8rpx!important}.u-m-t-8{margin-top:8rpx!important}.u-p-t-8{padding-top:8rpx!important}.u-margin-top-8{margin-top:8rpx!important}.u-padding-top-8{padding-top:8rpx!important}.u-m-r-8{margin-right:8rpx!important}.u-p-r-8{padding-right:8rpx!important}.u-margin-right-8{margin-right:8rpx!important}.u-padding-right-8{padding-right:8rpx!important}.u-m-b-8{margin-bottom:8rpx!important}.u-p-b-8{padding-bottom:8rpx!important}.u-margin-bottom-8{margin-bottom:8rpx!important}.u-padding-bottom-8{padding-bottom:8rpx!important}.u-margin-10,.u-m-10{margin:10rpx!important}.u-padding-10,.u-p-10{padding:10rpx!important}.u-m-l-10{margin-left:10rpx!important}.u-p-l-10{padding-left:10rpx!important}.u-margin-left-10{margin-left:10rpx!important}.u-padding-left-10{padding-left:10rpx!important}.u-m-t-10{margin-top:10rpx!important}.u-p-t-10{padding-top:10rpx!important}.u-margin-top-10{margin-top:10rpx!important}.u-padding-top-10{padding-top:10rpx!important}.u-m-r-10{margin-right:10rpx!important}.u-p-r-10{padding-right:10rpx!important}.u-margin-right-10{margin-right:10rpx!important}.u-padding-right-10{padding-right:10rpx!important}.u-m-b-10{margin-bottom:10rpx!important}.u-p-b-10{padding-bottom:10rpx!important}.u-margin-bottom-10{margin-bottom:10rpx!important}.u-padding-bottom-10{padding-bottom:10rpx!important}.u-margin-12,.u-m-12{margin:12rpx!important}.u-padding-12,.u-p-12{padding:12rpx!important}.u-m-l-12{margin-left:12rpx!important}.u-p-l-12{padding-left:12rpx!important}.u-margin-left-12{margin-left:12rpx!important}.u-padding-left-12{padding-left:12rpx!important}.u-m-t-12{margin-top:12rpx!important}.u-p-t-12{padding-top:12rpx!important}.u-margin-top-12{margin-top:12rpx!important}.u-padding-top-12{padding-top:12rpx!important}.u-m-r-12{margin-right:12rpx!important}.u-p-r-12{padding-right:12rpx!important}.u-margin-right-12{margin-right:12rpx!important}.u-padding-right-12{padding-right:12rpx!important}.u-m-b-12{margin-bottom:12rpx!important}.u-p-b-12{padding-bottom:12rpx!important}.u-margin-bottom-12{margin-bottom:12rpx!important}.u-padding-bottom-12{padding-bottom:12rpx!important}.u-margin-14,.u-m-14{margin:14rpx!important}.u-padding-14,.u-p-14{padding:14rpx!important}.u-m-l-14{margin-left:14rpx!important}.u-p-l-14{padding-left:14rpx!important}.u-margin-left-14{margin-left:14rpx!important}.u-padding-left-14{padding-left:14rpx!important}.u-m-t-14{margin-top:14rpx!important}.u-p-t-14{padding-top:14rpx!important}.u-margin-top-14{margin-top:14rpx!important}.u-padding-top-14{padding-top:14rpx!important}.u-m-r-14{margin-right:14rpx!important}.u-p-r-14{padding-right:14rpx!important}.u-margin-right-14{margin-right:14rpx!important}.u-padding-right-14{padding-right:14rpx!important}.u-m-b-14{margin-bottom:14rpx!important}.u-p-b-14{padding-bottom:14rpx!important}.u-margin-bottom-14{margin-bottom:14rpx!important}.u-padding-bottom-14{padding-bottom:14rpx!important}.u-margin-15,.u-m-15{margin:15rpx!important}.u-padding-15,.u-p-15{padding:15rpx!important}.u-m-l-15{margin-left:15rpx!important}.u-p-l-15{padding-left:15rpx!important}.u-margin-left-15{margin-left:15rpx!important}.u-padding-left-15{padding-left:15rpx!important}.u-m-t-15{margin-top:15rpx!important}.u-p-t-15{padding-top:15rpx!important}.u-margin-top-15{margin-top:15rpx!important}.u-padding-top-15{padding-top:15rpx!important}.u-m-r-15{margin-right:15rpx!important}.u-p-r-15{padding-right:15rpx!important}.u-margin-right-15{margin-right:15rpx!important}.u-padding-right-15{padding-right:15rpx!important}.u-m-b-15{margin-bottom:15rpx!important}.u-p-b-15{padding-bottom:15rpx!important}.u-margin-bottom-15{margin-bottom:15rpx!important}.u-padding-bottom-15{padding-bottom:15rpx!important}.u-margin-16,.u-m-16{margin:16rpx!important}.u-padding-16,.u-p-16{padding:16rpx!important}.u-m-l-16{margin-left:16rpx!important}.u-p-l-16{padding-left:16rpx!important}.u-margin-left-16{margin-left:16rpx!important}.u-padding-left-16{padding-left:16rpx!important}.u-m-t-16{margin-top:16rpx!important}.u-p-t-16{padding-top:16rpx!important}.u-margin-top-16{margin-top:16rpx!important}.u-padding-top-16{padding-top:16rpx!important}.u-m-r-16{margin-right:16rpx!important}.u-p-r-16{padding-right:16rpx!important}.u-margin-right-16{margin-right:16rpx!important}.u-padding-right-16{padding-right:16rpx!important}.u-m-b-16{margin-bottom:16rpx!important}.u-p-b-16{padding-bottom:16rpx!important}.u-margin-bottom-16{margin-bottom:16rpx!important}.u-padding-bottom-16{padding-bottom:16rpx!important}.u-margin-18,.u-m-18{margin:18rpx!important}.u-padding-18,.u-p-18{padding:18rpx!important}.u-m-l-18{margin-left:18rpx!important}.u-p-l-18{padding-left:18rpx!important}.u-margin-left-18{margin-left:18rpx!important}.u-padding-left-18{padding-left:18rpx!important}.u-m-t-18{margin-top:18rpx!important}.u-p-t-18{padding-top:18rpx!important}.u-margin-top-18{margin-top:18rpx!important}.u-padding-top-18{padding-top:18rpx!important}.u-m-r-18{margin-right:18rpx!important}.u-p-r-18{padding-right:18rpx!important}.u-margin-right-18{margin-right:18rpx!important}.u-padding-right-18{padding-right:18rpx!important}.u-m-b-18{margin-bottom:18rpx!important}.u-p-b-18{padding-bottom:18rpx!important}.u-margin-bottom-18{margin-bottom:18rpx!important}.u-padding-bottom-18{padding-bottom:18rpx!important}.u-margin-20,.u-m-20{margin:20rpx!important}.u-padding-20,.u-p-20{padding:20rpx!important}.u-m-l-20{margin-left:20rpx!important}.u-p-l-20{padding-left:20rpx!important}.u-margin-left-20{margin-left:20rpx!important}.u-padding-left-20{padding-left:20rpx!important}.u-m-t-20{margin-top:20rpx!important}.u-p-t-20{padding-top:20rpx!important}.u-margin-top-20{margin-top:20rpx!important}.u-padding-top-20{padding-top:20rpx!important}.u-m-r-20{margin-right:20rpx!important}.u-p-r-20{padding-right:20rpx!important}.u-margin-right-20{margin-right:20rpx!important}.u-padding-right-20{padding-right:20rpx!important}.u-m-b-20{margin-bottom:20rpx!important}.u-p-b-20{padding-bottom:20rpx!important}.u-margin-bottom-20{margin-bottom:20rpx!important}.u-padding-bottom-20{padding-bottom:20rpx!important}.u-margin-22,.u-m-22{margin:22rpx!important}.u-padding-22,.u-p-22{padding:22rpx!important}.u-m-l-22{margin-left:22rpx!important}.u-p-l-22{padding-left:22rpx!important}.u-margin-left-22{margin-left:22rpx!important}.u-padding-left-22{padding-left:22rpx!important}.u-m-t-22{margin-top:22rpx!important}.u-p-t-22{padding-top:22rpx!important}.u-margin-top-22{margin-top:22rpx!important}.u-padding-top-22{padding-top:22rpx!important}.u-m-r-22{margin-right:22rpx!important}.u-p-r-22{padding-right:22rpx!important}.u-margin-right-22{margin-right:22rpx!important}.u-padding-right-22{padding-right:22rpx!important}.u-m-b-22{margin-bottom:22rpx!important}.u-p-b-22{padding-bottom:22rpx!important}.u-margin-bottom-22{margin-bottom:22rpx!important}.u-padding-bottom-22{padding-bottom:22rpx!important}.u-margin-24,.u-m-24{margin:24rpx!important}.u-padding-24,.u-p-24{padding:24rpx!important}.u-m-l-24{margin-left:24rpx!important}.u-p-l-24{padding-left:24rpx!important}.u-margin-left-24{margin-left:24rpx!important}.u-padding-left-24{padding-left:24rpx!important}.u-m-t-24{margin-top:24rpx!important}.u-p-t-24{padding-top:24rpx!important}.u-margin-top-24{margin-top:24rpx!important}.u-padding-top-24{padding-top:24rpx!important}.u-m-r-24{margin-right:24rpx!important}.u-p-r-24{padding-right:24rpx!important}.u-margin-right-24{margin-right:24rpx!important}.u-padding-right-24{padding-right:24rpx!important}.u-m-b-24{margin-bottom:24rpx!important}.u-p-b-24{padding-bottom:24rpx!important}.u-margin-bottom-24{margin-bottom:24rpx!important}.u-padding-bottom-24{padding-bottom:24rpx!important}.u-margin-25,.u-m-25{margin:25rpx!important}.u-padding-25,.u-p-25{padding:25rpx!important}.u-m-l-25{margin-left:25rpx!important}.u-p-l-25{padding-left:25rpx!important}.u-margin-left-25{margin-left:25rpx!important}.u-padding-left-25{padding-left:25rpx!important}.u-m-t-25{margin-top:25rpx!important}.u-p-t-25{padding-top:25rpx!important}.u-margin-top-25{margin-top:25rpx!important}.u-padding-top-25{padding-top:25rpx!important}.u-m-r-25{margin-right:25rpx!important}.u-p-r-25{padding-right:25rpx!important}.u-margin-right-25{margin-right:25rpx!important}.u-padding-right-25{padding-right:25rpx!important}.u-m-b-25{margin-bottom:25rpx!important}.u-p-b-25{padding-bottom:25rpx!important}.u-margin-bottom-25{margin-bottom:25rpx!important}.u-padding-bottom-25{padding-bottom:25rpx!important}.u-margin-26,.u-m-26{margin:26rpx!important}.u-padding-26,.u-p-26{padding:26rpx!important}.u-m-l-26{margin-left:26rpx!important}.u-p-l-26{padding-left:26rpx!important}.u-margin-left-26{margin-left:26rpx!important}.u-padding-left-26{padding-left:26rpx!important}.u-m-t-26{margin-top:26rpx!important}.u-p-t-26{padding-top:26rpx!important}.u-margin-top-26{margin-top:26rpx!important}.u-padding-top-26{padding-top:26rpx!important}.u-m-r-26{margin-right:26rpx!important}.u-p-r-26{padding-right:26rpx!important}.u-margin-right-26{margin-right:26rpx!important}.u-padding-right-26{padding-right:26rpx!important}.u-m-b-26{margin-bottom:26rpx!important}.u-p-b-26{padding-bottom:26rpx!important}.u-margin-bottom-26{margin-bottom:26rpx!important}.u-padding-bottom-26{padding-bottom:26rpx!important}.u-margin-28,.u-m-28{margin:28rpx!important}.u-padding-28,.u-p-28{padding:28rpx!important}.u-m-l-28{margin-left:28rpx!important}.u-p-l-28{padding-left:28rpx!important}.u-margin-left-28{margin-left:28rpx!important}.u-padding-left-28{padding-left:28rpx!important}.u-m-t-28{margin-top:28rpx!important}.u-p-t-28{padding-top:28rpx!important}.u-margin-top-28{margin-top:28rpx!important}.u-padding-top-28{padding-top:28rpx!important}.u-m-r-28{margin-right:28rpx!important}.u-p-r-28{padding-right:28rpx!important}.u-margin-right-28{margin-right:28rpx!important}.u-padding-right-28{padding-right:28rpx!important}.u-m-b-28{margin-bottom:28rpx!important}.u-p-b-28{padding-bottom:28rpx!important}.u-margin-bottom-28{margin-bottom:28rpx!important}.u-padding-bottom-28{padding-bottom:28rpx!important}.u-margin-30,.u-m-30{margin:30rpx!important}.u-padding-30,.u-p-30{padding:30rpx!important}.u-m-l-30{margin-left:30rpx!important}.u-p-l-30{padding-left:30rpx!important}.u-margin-left-30{margin-left:30rpx!important}.u-padding-left-30{padding-left:30rpx!important}.u-m-t-30{margin-top:30rpx!important}.u-p-t-30{padding-top:30rpx!important}.u-margin-top-30{margin-top:30rpx!important}.u-padding-top-30{padding-top:30rpx!important}.u-m-r-30{margin-right:30rpx!important}.u-p-r-30{padding-right:30rpx!important}.u-margin-right-30{margin-right:30rpx!important}.u-padding-right-30{padding-right:30rpx!important}.u-m-b-30{margin-bottom:30rpx!important}.u-p-b-30{padding-bottom:30rpx!important}.u-margin-bottom-30{margin-bottom:30rpx!important}.u-padding-bottom-30{padding-bottom:30rpx!important}.u-margin-32,.u-m-32{margin:32rpx!important}.u-padding-32,.u-p-32{padding:32rpx!important}.u-m-l-32{margin-left:32rpx!important}.u-p-l-32{padding-left:32rpx!important}.u-margin-left-32{margin-left:32rpx!important}.u-padding-left-32{padding-left:32rpx!important}.u-m-t-32{margin-top:32rpx!important}.u-p-t-32{padding-top:32rpx!important}.u-margin-top-32{margin-top:32rpx!important}.u-padding-top-32{padding-top:32rpx!important}.u-m-r-32{margin-right:32rpx!important}.u-p-r-32{padding-right:32rpx!important}.u-margin-right-32{margin-right:32rpx!important}.u-padding-right-32{padding-right:32rpx!important}.u-m-b-32{margin-bottom:32rpx!important}.u-p-b-32{padding-bottom:32rpx!important}.u-margin-bottom-32{margin-bottom:32rpx!important}.u-padding-bottom-32{padding-bottom:32rpx!important}.u-margin-34,.u-m-34{margin:34rpx!important}.u-padding-34,.u-p-34{padding:34rpx!important}.u-m-l-34{margin-left:34rpx!important}.u-p-l-34{padding-left:34rpx!important}.u-margin-left-34{margin-left:34rpx!important}.u-padding-left-34{padding-left:34rpx!important}.u-m-t-34{margin-top:34rpx!important}.u-p-t-34{padding-top:34rpx!important}.u-margin-top-34{margin-top:34rpx!important}.u-padding-top-34{padding-top:34rpx!important}.u-m-r-34{margin-right:34rpx!important}.u-p-r-34{padding-right:34rpx!important}.u-margin-right-34{margin-right:34rpx!important}.u-padding-right-34{padding-right:34rpx!important}.u-m-b-34{margin-bottom:34rpx!important}.u-p-b-34{padding-bottom:34rpx!important}.u-margin-bottom-34{margin-bottom:34rpx!important}.u-padding-bottom-34{padding-bottom:34rpx!important}.u-margin-35,.u-m-35{margin:35rpx!important}.u-padding-35,.u-p-35{padding:35rpx!important}.u-m-l-35{margin-left:35rpx!important}.u-p-l-35{padding-left:35rpx!important}.u-margin-left-35{margin-left:35rpx!important}.u-padding-left-35{padding-left:35rpx!important}.u-m-t-35{margin-top:35rpx!important}.u-p-t-35{padding-top:35rpx!important}.u-margin-top-35{margin-top:35rpx!important}.u-padding-top-35{padding-top:35rpx!important}.u-m-r-35{margin-right:35rpx!important}.u-p-r-35{padding-right:35rpx!important}.u-margin-right-35{margin-right:35rpx!important}.u-padding-right-35{padding-right:35rpx!important}.u-m-b-35{margin-bottom:35rpx!important}.u-p-b-35{padding-bottom:35rpx!important}.u-margin-bottom-35{margin-bottom:35rpx!important}.u-padding-bottom-35{padding-bottom:35rpx!important}.u-margin-36,.u-m-36{margin:36rpx!important}.u-padding-36,.u-p-36{padding:36rpx!important}.u-m-l-36{margin-left:36rpx!important}.u-p-l-36{padding-left:36rpx!important}.u-margin-left-36{margin-left:36rpx!important}.u-padding-left-36{padding-left:36rpx!important}.u-m-t-36{margin-top:36rpx!important}.u-p-t-36{padding-top:36rpx!important}.u-margin-top-36{margin-top:36rpx!important}.u-padding-top-36{padding-top:36rpx!important}.u-m-r-36{margin-right:36rpx!important}.u-p-r-36{padding-right:36rpx!important}.u-margin-right-36{margin-right:36rpx!important}.u-padding-right-36{padding-right:36rpx!important}.u-m-b-36{margin-bottom:36rpx!important}.u-p-b-36{padding-bottom:36rpx!important}.u-margin-bottom-36{margin-bottom:36rpx!important}.u-padding-bottom-36{padding-bottom:36rpx!important}.u-margin-38,.u-m-38{margin:38rpx!important}.u-padding-38,.u-p-38{padding:38rpx!important}.u-m-l-38{margin-left:38rpx!important}.u-p-l-38{padding-left:38rpx!important}.u-margin-left-38{margin-left:38rpx!important}.u-padding-left-38{padding-left:38rpx!important}.u-m-t-38{margin-top:38rpx!important}.u-p-t-38{padding-top:38rpx!important}.u-margin-top-38{margin-top:38rpx!important}.u-padding-top-38{padding-top:38rpx!important}.u-m-r-38{margin-right:38rpx!important}.u-p-r-38{padding-right:38rpx!important}.u-margin-right-38{margin-right:38rpx!important}.u-padding-right-38{padding-right:38rpx!important}.u-m-b-38{margin-bottom:38rpx!important}.u-p-b-38{padding-bottom:38rpx!important}.u-margin-bottom-38{margin-bottom:38rpx!important}.u-padding-bottom-38{padding-bottom:38rpx!important}.u-margin-40,.u-m-40{margin:40rpx!important}.u-padding-40,.u-p-40{padding:40rpx!important}.u-m-l-40{margin-left:40rpx!important}.u-p-l-40{padding-left:40rpx!important}.u-margin-left-40{margin-left:40rpx!important}.u-padding-left-40{padding-left:40rpx!important}.u-m-t-40{margin-top:40rpx!important}.u-p-t-40{padding-top:40rpx!important}.u-margin-top-40{margin-top:40rpx!important}.u-padding-top-40{padding-top:40rpx!important}.u-m-r-40{margin-right:40rpx!important}.u-p-r-40{padding-right:40rpx!important}.u-margin-right-40{margin-right:40rpx!important}.u-padding-right-40{padding-right:40rpx!important}.u-m-b-40{margin-bottom:40rpx!important}.u-p-b-40{padding-bottom:40rpx!important}.u-margin-bottom-40{margin-bottom:40rpx!important}.u-padding-bottom-40{padding-bottom:40rpx!important}.u-margin-42,.u-m-42{margin:42rpx!important}.u-padding-42,.u-p-42{padding:42rpx!important}.u-m-l-42{margin-left:42rpx!important}.u-p-l-42{padding-left:42rpx!important}.u-margin-left-42{margin-left:42rpx!important}.u-padding-left-42{padding-left:42rpx!important}.u-m-t-42{margin-top:42rpx!important}.u-p-t-42{padding-top:42rpx!important}.u-margin-top-42{margin-top:42rpx!important}.u-padding-top-42{padding-top:42rpx!important}.u-m-r-42{margin-right:42rpx!important}.u-p-r-42{padding-right:42rpx!important}.u-margin-right-42{margin-right:42rpx!important}.u-padding-right-42{padding-right:42rpx!important}.u-m-b-42{margin-bottom:42rpx!important}.u-p-b-42{padding-bottom:42rpx!important}.u-margin-bottom-42{margin-bottom:42rpx!important}.u-padding-bottom-42{padding-bottom:42rpx!important}.u-margin-44,.u-m-44{margin:44rpx!important}.u-padding-44,.u-p-44{padding:44rpx!important}.u-m-l-44{margin-left:44rpx!important}.u-p-l-44{padding-left:44rpx!important}.u-margin-left-44{margin-left:44rpx!important}.u-padding-left-44{padding-left:44rpx!important}.u-m-t-44{margin-top:44rpx!important}.u-p-t-44{padding-top:44rpx!important}.u-margin-top-44{margin-top:44rpx!important}.u-padding-top-44{padding-top:44rpx!important}.u-m-r-44{margin-right:44rpx!important}.u-p-r-44{padding-right:44rpx!important}.u-margin-right-44{margin-right:44rpx!important}.u-padding-right-44{padding-right:44rpx!important}.u-m-b-44{margin-bottom:44rpx!important}.u-p-b-44{padding-bottom:44rpx!important}.u-margin-bottom-44{margin-bottom:44rpx!important}.u-padding-bottom-44{padding-bottom:44rpx!important}.u-margin-45,.u-m-45{margin:45rpx!important}.u-padding-45,.u-p-45{padding:45rpx!important}.u-m-l-45{margin-left:45rpx!important}.u-p-l-45{padding-left:45rpx!important}.u-margin-left-45{margin-left:45rpx!important}.u-padding-left-45{padding-left:45rpx!important}.u-m-t-45{margin-top:45rpx!important}.u-p-t-45{padding-top:45rpx!important}.u-margin-top-45{margin-top:45rpx!important}.u-padding-top-45{padding-top:45rpx!important}.u-m-r-45{margin-right:45rpx!important}.u-p-r-45{padding-right:45rpx!important}.u-margin-right-45{margin-right:45rpx!important}.u-padding-right-45{padding-right:45rpx!important}.u-m-b-45{margin-bottom:45rpx!important}.u-p-b-45{padding-bottom:45rpx!important}.u-margin-bottom-45{margin-bottom:45rpx!important}.u-padding-bottom-45{padding-bottom:45rpx!important}.u-margin-46,.u-m-46{margin:46rpx!important}.u-padding-46,.u-p-46{padding:46rpx!important}.u-m-l-46{margin-left:46rpx!important}.u-p-l-46{padding-left:46rpx!important}.u-margin-left-46{margin-left:46rpx!important}.u-padding-left-46{padding-left:46rpx!important}.u-m-t-46{margin-top:46rpx!important}.u-p-t-46{padding-top:46rpx!important}.u-margin-top-46{margin-top:46rpx!important}.u-padding-top-46{padding-top:46rpx!important}.u-m-r-46{margin-right:46rpx!important}.u-p-r-46{padding-right:46rpx!important}.u-margin-right-46{margin-right:46rpx!important}.u-padding-right-46{padding-right:46rpx!important}.u-m-b-46{margin-bottom:46rpx!important}.u-p-b-46{padding-bottom:46rpx!important}.u-margin-bottom-46{margin-bottom:46rpx!important}.u-padding-bottom-46{padding-bottom:46rpx!important}.u-margin-48,.u-m-48{margin:48rpx!important}.u-padding-48,.u-p-48{padding:48rpx!important}.u-m-l-48{margin-left:48rpx!important}.u-p-l-48{padding-left:48rpx!important}.u-margin-left-48{margin-left:48rpx!important}.u-padding-left-48{padding-left:48rpx!important}.u-m-t-48{margin-top:48rpx!important}.u-p-t-48{padding-top:48rpx!important}.u-margin-top-48{margin-top:48rpx!important}.u-padding-top-48{padding-top:48rpx!important}.u-m-r-48{margin-right:48rpx!important}.u-p-r-48{padding-right:48rpx!important}.u-margin-right-48{margin-right:48rpx!important}.u-padding-right-48{padding-right:48rpx!important}.u-m-b-48{margin-bottom:48rpx!important}.u-p-b-48{padding-bottom:48rpx!important}.u-margin-bottom-48{margin-bottom:48rpx!important}.u-padding-bottom-48{padding-bottom:48rpx!important}.u-margin-50,.u-m-50{margin:50rpx!important}.u-padding-50,.u-p-50{padding:50rpx!important}.u-m-l-50{margin-left:50rpx!important}.u-p-l-50{padding-left:50rpx!important}.u-margin-left-50{margin-left:50rpx!important}.u-padding-left-50{padding-left:50rpx!important}.u-m-t-50{margin-top:50rpx!important}.u-p-t-50{padding-top:50rpx!important}.u-margin-top-50{margin-top:50rpx!important}.u-padding-top-50{padding-top:50rpx!important}.u-m-r-50{margin-right:50rpx!important}.u-p-r-50{padding-right:50rpx!important}.u-margin-right-50{margin-right:50rpx!important}.u-padding-right-50{padding-right:50rpx!important}.u-m-b-50{margin-bottom:50rpx!important}.u-p-b-50{padding-bottom:50rpx!important}.u-margin-bottom-50{margin-bottom:50rpx!important}.u-padding-bottom-50{padding-bottom:50rpx!important}.u-margin-52,.u-m-52{margin:52rpx!important}.u-padding-52,.u-p-52{padding:52rpx!important}.u-m-l-52{margin-left:52rpx!important}.u-p-l-52{padding-left:52rpx!important}.u-margin-left-52{margin-left:52rpx!important}.u-padding-left-52{padding-left:52rpx!important}.u-m-t-52{margin-top:52rpx!important}.u-p-t-52{padding-top:52rpx!important}.u-margin-top-52{margin-top:52rpx!important}.u-padding-top-52{padding-top:52rpx!important}.u-m-r-52{margin-right:52rpx!important}.u-p-r-52{padding-right:52rpx!important}.u-margin-right-52{margin-right:52rpx!important}.u-padding-right-52{padding-right:52rpx!important}.u-m-b-52{margin-bottom:52rpx!important}.u-p-b-52{padding-bottom:52rpx!important}.u-margin-bottom-52{margin-bottom:52rpx!important}.u-padding-bottom-52{padding-bottom:52rpx!important}.u-margin-54,.u-m-54{margin:54rpx!important}.u-padding-54,.u-p-54{padding:54rpx!important}.u-m-l-54{margin-left:54rpx!important}.u-p-l-54{padding-left:54rpx!important}.u-margin-left-54{margin-left:54rpx!important}.u-padding-left-54{padding-left:54rpx!important}.u-m-t-54{margin-top:54rpx!important}.u-p-t-54{padding-top:54rpx!important}.u-margin-top-54{margin-top:54rpx!important}.u-padding-top-54{padding-top:54rpx!important}.u-m-r-54{margin-right:54rpx!important}.u-p-r-54{padding-right:54rpx!important}.u-margin-right-54{margin-right:54rpx!important}.u-padding-right-54{padding-right:54rpx!important}.u-m-b-54{margin-bottom:54rpx!important}.u-p-b-54{padding-bottom:54rpx!important}.u-margin-bottom-54{margin-bottom:54rpx!important}.u-padding-bottom-54{padding-bottom:54rpx!important}.u-margin-55,.u-m-55{margin:55rpx!important}.u-padding-55,.u-p-55{padding:55rpx!important}.u-m-l-55{margin-left:55rpx!important}.u-p-l-55{padding-left:55rpx!important}.u-margin-left-55{margin-left:55rpx!important}.u-padding-left-55{padding-left:55rpx!important}.u-m-t-55{margin-top:55rpx!important}.u-p-t-55{padding-top:55rpx!important}.u-margin-top-55{margin-top:55rpx!important}.u-padding-top-55{padding-top:55rpx!important}.u-m-r-55{margin-right:55rpx!important}.u-p-r-55{padding-right:55rpx!important}.u-margin-right-55{margin-right:55rpx!important}.u-padding-right-55{padding-right:55rpx!important}.u-m-b-55{margin-bottom:55rpx!important}.u-p-b-55{padding-bottom:55rpx!important}.u-margin-bottom-55{margin-bottom:55rpx!important}.u-padding-bottom-55{padding-bottom:55rpx!important}.u-margin-56,.u-m-56{margin:56rpx!important}.u-padding-56,.u-p-56{padding:56rpx!important}.u-m-l-56{margin-left:56rpx!important}.u-p-l-56{padding-left:56rpx!important}.u-margin-left-56{margin-left:56rpx!important}.u-padding-left-56{padding-left:56rpx!important}.u-m-t-56{margin-top:56rpx!important}.u-p-t-56{padding-top:56rpx!important}.u-margin-top-56{margin-top:56rpx!important}.u-padding-top-56{padding-top:56rpx!important}.u-m-r-56{margin-right:56rpx!important}.u-p-r-56{padding-right:56rpx!important}.u-margin-right-56{margin-right:56rpx!important}.u-padding-right-56{padding-right:56rpx!important}.u-m-b-56{margin-bottom:56rpx!important}.u-p-b-56{padding-bottom:56rpx!important}.u-margin-bottom-56{margin-bottom:56rpx!important}.u-padding-bottom-56{padding-bottom:56rpx!important}.u-margin-58,.u-m-58{margin:58rpx!important}.u-padding-58,.u-p-58{padding:58rpx!important}.u-m-l-58{margin-left:58rpx!important}.u-p-l-58{padding-left:58rpx!important}.u-margin-left-58{margin-left:58rpx!important}.u-padding-left-58{padding-left:58rpx!important}.u-m-t-58{margin-top:58rpx!important}.u-p-t-58{padding-top:58rpx!important}.u-margin-top-58{margin-top:58rpx!important}.u-padding-top-58{padding-top:58rpx!important}.u-m-r-58{margin-right:58rpx!important}.u-p-r-58{padding-right:58rpx!important}.u-margin-right-58{margin-right:58rpx!important}.u-padding-right-58{padding-right:58rpx!important}.u-m-b-58{margin-bottom:58rpx!important}.u-p-b-58{padding-bottom:58rpx!important}.u-margin-bottom-58{margin-bottom:58rpx!important}.u-padding-bottom-58{padding-bottom:58rpx!important}.u-margin-60,.u-m-60{margin:60rpx!important}.u-padding-60,.u-p-60{padding:60rpx!important}.u-m-l-60{margin-left:60rpx!important}.u-p-l-60{padding-left:60rpx!important}.u-margin-left-60{margin-left:60rpx!important}.u-padding-left-60{padding-left:60rpx!important}.u-m-t-60{margin-top:60rpx!important}.u-p-t-60{padding-top:60rpx!important}.u-margin-top-60{margin-top:60rpx!important}.u-padding-top-60{padding-top:60rpx!important}.u-m-r-60{margin-right:60rpx!important}.u-p-r-60{padding-right:60rpx!important}.u-margin-right-60{margin-right:60rpx!important}.u-padding-right-60{padding-right:60rpx!important}.u-m-b-60{margin-bottom:60rpx!important}.u-p-b-60{padding-bottom:60rpx!important}.u-margin-bottom-60{margin-bottom:60rpx!important}.u-padding-bottom-60{padding-bottom:60rpx!important}.u-margin-62,.u-m-62{margin:62rpx!important}.u-padding-62,.u-p-62{padding:62rpx!important}.u-m-l-62{margin-left:62rpx!important}.u-p-l-62{padding-left:62rpx!important}.u-margin-left-62{margin-left:62rpx!important}.u-padding-left-62{padding-left:62rpx!important}.u-m-t-62{margin-top:62rpx!important}.u-p-t-62{padding-top:62rpx!important}.u-margin-top-62{margin-top:62rpx!important}.u-padding-top-62{padding-top:62rpx!important}.u-m-r-62{margin-right:62rpx!important}.u-p-r-62{padding-right:62rpx!important}.u-margin-right-62{margin-right:62rpx!important}.u-padding-right-62{padding-right:62rpx!important}.u-m-b-62{margin-bottom:62rpx!important}.u-p-b-62{padding-bottom:62rpx!important}.u-margin-bottom-62{margin-bottom:62rpx!important}.u-padding-bottom-62{padding-bottom:62rpx!important}.u-margin-64,.u-m-64{margin:64rpx!important}.u-padding-64,.u-p-64{padding:64rpx!important}.u-m-l-64{margin-left:64rpx!important}.u-p-l-64{padding-left:64rpx!important}.u-margin-left-64{margin-left:64rpx!important}.u-padding-left-64{padding-left:64rpx!important}.u-m-t-64{margin-top:64rpx!important}.u-p-t-64{padding-top:64rpx!important}.u-margin-top-64{margin-top:64rpx!important}.u-padding-top-64{padding-top:64rpx!important}.u-m-r-64{margin-right:64rpx!important}.u-p-r-64{padding-right:64rpx!important}.u-margin-right-64{margin-right:64rpx!important}.u-padding-right-64{padding-right:64rpx!important}.u-m-b-64{margin-bottom:64rpx!important}.u-p-b-64{padding-bottom:64rpx!important}.u-margin-bottom-64{margin-bottom:64rpx!important}.u-padding-bottom-64{padding-bottom:64rpx!important}.u-margin-65,.u-m-65{margin:65rpx!important}.u-padding-65,.u-p-65{padding:65rpx!important}.u-m-l-65{margin-left:65rpx!important}.u-p-l-65{padding-left:65rpx!important}.u-margin-left-65{margin-left:65rpx!important}.u-padding-left-65{padding-left:65rpx!important}.u-m-t-65{margin-top:65rpx!important}.u-p-t-65{padding-top:65rpx!important}.u-margin-top-65{margin-top:65rpx!important}.u-padding-top-65{padding-top:65rpx!important}.u-m-r-65{margin-right:65rpx!important}.u-p-r-65{padding-right:65rpx!important}.u-margin-right-65{margin-right:65rpx!important}.u-padding-right-65{padding-right:65rpx!important}.u-m-b-65{margin-bottom:65rpx!important}.u-p-b-65{padding-bottom:65rpx!important}.u-margin-bottom-65{margin-bottom:65rpx!important}.u-padding-bottom-65{padding-bottom:65rpx!important}.u-margin-66,.u-m-66{margin:66rpx!important}.u-padding-66,.u-p-66{padding:66rpx!important}.u-m-l-66{margin-left:66rpx!important}.u-p-l-66{padding-left:66rpx!important}.u-margin-left-66{margin-left:66rpx!important}.u-padding-left-66{padding-left:66rpx!important}.u-m-t-66{margin-top:66rpx!important}.u-p-t-66{padding-top:66rpx!important}.u-margin-top-66{margin-top:66rpx!important}.u-padding-top-66{padding-top:66rpx!important}.u-m-r-66{margin-right:66rpx!important}.u-p-r-66{padding-right:66rpx!important}.u-margin-right-66{margin-right:66rpx!important}.u-padding-right-66{padding-right:66rpx!important}.u-m-b-66{margin-bottom:66rpx!important}.u-p-b-66{padding-bottom:66rpx!important}.u-margin-bottom-66{margin-bottom:66rpx!important}.u-padding-bottom-66{padding-bottom:66rpx!important}.u-margin-68,.u-m-68{margin:68rpx!important}.u-padding-68,.u-p-68{padding:68rpx!important}.u-m-l-68{margin-left:68rpx!important}.u-p-l-68{padding-left:68rpx!important}.u-margin-left-68{margin-left:68rpx!important}.u-padding-left-68{padding-left:68rpx!important}.u-m-t-68{margin-top:68rpx!important}.u-p-t-68{padding-top:68rpx!important}.u-margin-top-68{margin-top:68rpx!important}.u-padding-top-68{padding-top:68rpx!important}.u-m-r-68{margin-right:68rpx!important}.u-p-r-68{padding-right:68rpx!important}.u-margin-right-68{margin-right:68rpx!important}.u-padding-right-68{padding-right:68rpx!important}.u-m-b-68{margin-bottom:68rpx!important}.u-p-b-68{padding-bottom:68rpx!important}.u-margin-bottom-68{margin-bottom:68rpx!important}.u-padding-bottom-68{padding-bottom:68rpx!important}.u-margin-70,.u-m-70{margin:70rpx!important}.u-padding-70,.u-p-70{padding:70rpx!important}.u-m-l-70{margin-left:70rpx!important}.u-p-l-70{padding-left:70rpx!important}.u-margin-left-70{margin-left:70rpx!important}.u-padding-left-70{padding-left:70rpx!important}.u-m-t-70{margin-top:70rpx!important}.u-p-t-70{padding-top:70rpx!important}.u-margin-top-70{margin-top:70rpx!important}.u-padding-top-70{padding-top:70rpx!important}.u-m-r-70{margin-right:70rpx!important}.u-p-r-70{padding-right:70rpx!important}.u-margin-right-70{margin-right:70rpx!important}.u-padding-right-70{padding-right:70rpx!important}.u-m-b-70{margin-bottom:70rpx!important}.u-p-b-70{padding-bottom:70rpx!important}.u-margin-bottom-70{margin-bottom:70rpx!important}.u-padding-bottom-70{padding-bottom:70rpx!important}.u-margin-72,.u-m-72{margin:72rpx!important}.u-padding-72,.u-p-72{padding:72rpx!important}.u-m-l-72{margin-left:72rpx!important}.u-p-l-72{padding-left:72rpx!important}.u-margin-left-72{margin-left:72rpx!important}.u-padding-left-72{padding-left:72rpx!important}.u-m-t-72{margin-top:72rpx!important}.u-p-t-72{padding-top:72rpx!important}.u-margin-top-72{margin-top:72rpx!important}.u-padding-top-72{padding-top:72rpx!important}.u-m-r-72{margin-right:72rpx!important}.u-p-r-72{padding-right:72rpx!important}.u-margin-right-72{margin-right:72rpx!important}.u-padding-right-72{padding-right:72rpx!important}.u-m-b-72{margin-bottom:72rpx!important}.u-p-b-72{padding-bottom:72rpx!important}.u-margin-bottom-72{margin-bottom:72rpx!important}.u-padding-bottom-72{padding-bottom:72rpx!important}.u-margin-74,.u-m-74{margin:74rpx!important}.u-padding-74,.u-p-74{padding:74rpx!important}.u-m-l-74{margin-left:74rpx!important}.u-p-l-74{padding-left:74rpx!important}.u-margin-left-74{margin-left:74rpx!important}.u-padding-left-74{padding-left:74rpx!important}.u-m-t-74{margin-top:74rpx!important}.u-p-t-74{padding-top:74rpx!important}.u-margin-top-74{margin-top:74rpx!important}.u-padding-top-74{padding-top:74rpx!important}.u-m-r-74{margin-right:74rpx!important}.u-p-r-74{padding-right:74rpx!important}.u-margin-right-74{margin-right:74rpx!important}.u-padding-right-74{padding-right:74rpx!important}.u-m-b-74{margin-bottom:74rpx!important}.u-p-b-74{padding-bottom:74rpx!important}.u-margin-bottom-74{margin-bottom:74rpx!important}.u-padding-bottom-74{padding-bottom:74rpx!important}.u-margin-75,.u-m-75{margin:75rpx!important}.u-padding-75,.u-p-75{padding:75rpx!important}.u-m-l-75{margin-left:75rpx!important}.u-p-l-75{padding-left:75rpx!important}.u-margin-left-75{margin-left:75rpx!important}.u-padding-left-75{padding-left:75rpx!important}.u-m-t-75{margin-top:75rpx!important}.u-p-t-75{padding-top:75rpx!important}.u-margin-top-75{margin-top:75rpx!important}.u-padding-top-75{padding-top:75rpx!important}.u-m-r-75{margin-right:75rpx!important}.u-p-r-75{padding-right:75rpx!important}.u-margin-right-75{margin-right:75rpx!important}.u-padding-right-75{padding-right:75rpx!important}.u-m-b-75{margin-bottom:75rpx!important}.u-p-b-75{padding-bottom:75rpx!important}.u-margin-bottom-75{margin-bottom:75rpx!important}.u-padding-bottom-75{padding-bottom:75rpx!important}.u-margin-76,.u-m-76{margin:76rpx!important}.u-padding-76,.u-p-76{padding:76rpx!important}.u-m-l-76{margin-left:76rpx!important}.u-p-l-76{padding-left:76rpx!important}.u-margin-left-76{margin-left:76rpx!important}.u-padding-left-76{padding-left:76rpx!important}.u-m-t-76{margin-top:76rpx!important}.u-p-t-76{padding-top:76rpx!important}.u-margin-top-76{margin-top:76rpx!important}.u-padding-top-76{padding-top:76rpx!important}.u-m-r-76{margin-right:76rpx!important}.u-p-r-76{padding-right:76rpx!important}.u-margin-right-76{margin-right:76rpx!important}.u-padding-right-76{padding-right:76rpx!important}.u-m-b-76{margin-bottom:76rpx!important}.u-p-b-76{padding-bottom:76rpx!important}.u-margin-bottom-76{margin-bottom:76rpx!important}.u-padding-bottom-76{padding-bottom:76rpx!important}.u-margin-78,.u-m-78{margin:78rpx!important}.u-padding-78,.u-p-78{padding:78rpx!important}.u-m-l-78{margin-left:78rpx!important}.u-p-l-78{padding-left:78rpx!important}.u-margin-left-78{margin-left:78rpx!important}.u-padding-left-78{padding-left:78rpx!important}.u-m-t-78{margin-top:78rpx!important}.u-p-t-78{padding-top:78rpx!important}.u-margin-top-78{margin-top:78rpx!important}.u-padding-top-78{padding-top:78rpx!important}.u-m-r-78{margin-right:78rpx!important}.u-p-r-78{padding-right:78rpx!important}.u-margin-right-78{margin-right:78rpx!important}.u-padding-right-78{padding-right:78rpx!important}.u-m-b-78{margin-bottom:78rpx!important}.u-p-b-78{padding-bottom:78rpx!important}.u-margin-bottom-78{margin-bottom:78rpx!important}.u-padding-bottom-78{padding-bottom:78rpx!important}.u-margin-80,.u-m-80{margin:80rpx!important}.u-padding-80,.u-p-80{padding:80rpx!important}.u-m-l-80{margin-left:80rpx!important}.u-p-l-80{padding-left:80rpx!important}.u-margin-left-80{margin-left:80rpx!important}.u-padding-left-80{padding-left:80rpx!important}.u-m-t-80{margin-top:80rpx!important}.u-p-t-80{padding-top:80rpx!important}.u-margin-top-80{margin-top:80rpx!important}.u-padding-top-80{padding-top:80rpx!important}.u-m-r-80{margin-right:80rpx!important}.u-p-r-80{padding-right:80rpx!important}.u-margin-right-80{margin-right:80rpx!important}.u-padding-right-80{padding-right:80rpx!important}.u-m-b-80{margin-bottom:80rpx!important}.u-p-b-80{padding-bottom:80rpx!important}.u-margin-bottom-80{margin-bottom:80rpx!important}.u-padding-bottom-80{padding-bottom:80rpx!important}.u-reset-nvue{flex-direction:row;align-items:center}.u-type-primary-light{color:#ecf5ff}.u-type-warning-light{color:#fdf6ec}.u-type-success-light{color:#dbf1e1}.u-type-error-light{color:#fef0f0}.u-type-info-light{color:#f4f4f5}.u-type-primary-light-bg{background-color:#ecf5ff}.u-type-warning-light-bg{background-color:#fdf6ec}.u-type-success-light-bg{background-color:#dbf1e1}.u-type-error-light-bg{background-color:#fef0f0}.u-type-info-light-bg{background-color:#f4f4f5}.u-type-primary-dark{color:#2b85e4}.u-type-warning-dark{color:#f29100}.u-type-success-dark{color:#18b566}.u-type-error-dark{color:#dd6161}.u-type-info-dark{color:#82848a}.u-type-primary-dark-bg{background-color:#2b85e4}.u-type-warning-dark-bg{background-color:#f29100}.u-type-success-dark-bg{background-color:#18b566}.u-type-error-dark-bg{background-color:#dd6161}.u-type-info-dark-bg{background-color:#82848a}.u-type-primary-disabled{color:#a0cfff}.u-type-warning-disabled{color:#fcbd71}.u-type-success-disabled{color:#71d5a1}.u-type-error-disabled{color:#fab6b6}.u-type-info-disabled{color:#c8c9cc}.u-type-primary{color:#2979ff}.u-type-warning{color:#f90}.u-type-success{color:#19be6b}.u-type-error{color:#fa3534}.u-type-info{color:#909399}.u-type-primary-bg{background-color:#2979ff}.u-type-warning-bg{background-color:#f90}.u-type-success-bg{background-color:#19be6b}.u-type-error-bg{background-color:#fa3534}.u-type-info-bg{background-color:#909399}.u-main-color{color:#303133}.u-content-color{color:#606266}.u-tips-color{color:#909399}.u-light-color{color:#c0c4cc}page{color:#303133;font-size:28rpx}.u-fix-ios-appearance{-webkit-appearance:none}.u-icon-wrap{display:flex;align-items:center}.safe-area-inset-bottom{padding-bottom:0;padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.u-hover-class{opacity:.6}.u-cell-hover{background-color:#f7f8f9!important}.u-line-1{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.u-line-2{-webkit-line-clamp:2}.u-line-3{-webkit-line-clamp:3}.u-line-4{-webkit-line-clamp:4}.u-line-5{-webkit-line-clamp:5}.u-line-2,.u-line-3,.u-line-4,.u-line-5{overflow:hidden;word-break:break-all;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical}.u-border,.u-border-bottom,.u-border-left,.u-border-right,.u-border-top,.u-border-top-bottom{position:relative}.u-border-bottom:after,.u-border-left:after,.u-border-right:after,.u-border-top-bottom:after,.u-border-top:after,.u-border:after{content:" ";position:absolute;left:0;top:0;pointer-events:none;box-sizing:border-box;transform-origin:0 0;width:199.8%;height:199.7%;transform:scale(.5);border:0 solid #e4e7ed;z-index:2}.u-border-top:after{border-top-width:1px}.u-border-left:after{border-left-width:1px}.u-border-right:after{border-right-width:1px}.u-border-bottom:after{border-bottom-width:1px}.u-border-top-bottom:after{border-width:1px 0}.u-border:after{border-width:1px}.u-clearfix:after,.clearfix:after{content:"";display:table;clear:both}.u-blur-effect-inset{width:750rpx;height:var(--window-bottom);background-color:#fff}.u-reset-button{padding:0;font-size:inherit;line-height:inherit;background-color:transparent;color:inherit}.u-reset-button:after{border:none}u-td,u-th{flex:1;align-self:stretch}.u-td{height:100%}u-icon{display:inline-flex;align-items:center}u-grid{width:100%;flex:0 0 100%}u-line{flex:1}u-switch{display:inline-flex;align-items:center}u-dropdown{flex:1}
-page::after{position:fixed;content:'';left:-1000px;top:-1000px;-webkit-animation:shadow-preload .1s;-webkit-animation-delay:3s;animation:shadow-preload .1s;animation-delay:3s}@-webkit-keyframes shadow-preload{0%{background-image:url(https://cdn1.dcloud.net.cn/515467334d5549325169556c6433686c4e7a55795a6a51315a54646d4e3246684d6a6378/img/shadow-grey.png)}100%{background-image:url(https://cdn1.dcloud.net.cn/515467334d5549325169556c6433686c4e7a55795a6a51315a54646d4e3246684d6a6378/img/shadow-grey.png)}}@keyframes shadow-preload{0%{background-image:url(https://cdn1.dcloud.net.cn/515467334d5549325169556c6433686c4e7a55795a6a51315a54646d4e3246684d6a6378/img/shadow-grey.png)}100%{background-image:url(https://cdn1.dcloud.net.cn/515467334d5549325169556c6433686c4e7a55795a6a51315a54646d4e3246684d6a6378/img/shadow-grey.png)}}page{--status-bar-height:25px;--top-window-height:0px;--window-top:0px;--window-bottom:0px;--window-left:0px;--window-right:0px;--window-magin:0px}[data-c-h="true"]{display: none !important;}
\ No newline at end of file
+page::after{position:fixed;content:'';left:-1000px;top:-1000px;-webkit-animation:shadow-preload .1s;-webkit-animation-delay:3s;animation:shadow-preload .1s;animation-delay:3s}@-webkit-keyframes shadow-preload{0%{background-image:url(https://cdn1.dcloud.net.cn/515467334d5549325169556c643367794d5459315a6a42695a544d314e6d466c4e324535/img/shadow-grey.png)}100%{background-image:url(https://cdn1.dcloud.net.cn/515467334d5549325169556c643367794d5459315a6a42695a544d314e6d466c4e324535/img/shadow-grey.png)}}@keyframes shadow-preload{0%{background-image:url(https://cdn1.dcloud.net.cn/515467334d5549325169556c643367794d5459315a6a42695a544d314e6d466c4e324535/img/shadow-grey.png)}100%{background-image:url(https://cdn1.dcloud.net.cn/515467334d5549325169556c643367794d5459315a6a42695a544d314e6d466c4e324535/img/shadow-grey.png)}}page{--status-bar-height:25px;--top-window-height:0px;--window-top:0px;--window-bottom:0px;--window-left:0px;--window-right:0px;--window-magin:0px}[data-c-h="true"]{display: none !important;}
\ No newline at end of file
diff --git a/unpackage/dist/build/mp-weixin/config/http.js b/unpackage/dist/build/mp-weixin/config/http.js
index 5713cd3..466e91e 100644
--- a/unpackage/dist/build/mp-weixin/config/http.js
+++ b/unpackage/dist/build/mp-weixin/config/http.js
@@ -1 +1 @@
-"use strict";const e=require("../common/vendor.js"),d=require("./url.js");exports.request=a=>new Promise(((o,t)=>{console.log(`发起请求: ${a.method} ${d.URL+a.url}`,a.data),a.hideLoading||e.index.showLoading({title:a.loadingText||"加载中...",mask:!0}),e.index.request({url:d.URL+a.url,method:a.method,data:a.data,header:{"Content-Type":"application/x-www-form-urlencoded",...a.headers,appid:d.appid,Authorization:"Bearer "+e.index.getStorageSync("token"),Clientid:e.index.getStorageSync("client_id")},success:e=>(console.log(`请求响应: ${a.url}`,e),200!==e.statusCode?(console.error(`HTTP状态码错误: ${e.statusCode}`,e.data),e.data?void o(e.data):void t({msg:`请求失败,状态码:${e.statusCode}`})):e.data&&200!==e.data.code?(console.warn(`业务状态码错误: ${e.data.code}`,e.data),a.ignoreEmptyError&&500===e.data.code&&e.data.msg&&(e.data.msg.includes("未找到")||e.data.msg.includes("不存在"))?void o({code:200,msg:"操作成功",data:[]}):void o(e.data)):void o(e.data)),fail(e){console.error(`请求失败: ${a.url}`,e),t(e)},complete(){a.hideLoading||e.index.hideLoading()}})}));
+"use strict";const e=require("../common/vendor.js"),d=require("./url.js");exports.request=a=>new Promise(((t,o)=>{a.hideLoading||e.index.showLoading({title:a.loadingText||"加载中...",mask:!0}),e.index.request({url:d.URL+a.url,method:a.method,data:a.data,header:{"Content-Type":"application/x-www-form-urlencoded",...a.headers,appid:d.appid,Authorization:"Bearer "+e.index.getStorageSync("token"),Clientid:e.index.getStorageSync("client_id")},success:e=>200!==e.statusCode?(console.error(`HTTP状态码错误: ${e.statusCode}`,e.data),e.data?void t(e.data):void o({msg:`请求失败,状态码:${e.statusCode}`})):e.data&&200!==e.data.code?(console.warn(`业务状态码错误: ${e.data.code}`,e.data),a.ignoreEmptyError&&500===e.data.code&&e.data.msg&&(e.data.msg.includes("未找到")||e.data.msg.includes("不存在"))?void t({code:200,msg:"操作成功",data:[]}):void t(e.data)):void t(e.data),fail(e){console.error(`请求失败: ${a.url}`,e),o(e)},complete(){a.hideLoading||e.index.hideLoading()}})}));
diff --git a/unpackage/dist/build/mp-weixin/config/url.js b/unpackage/dist/build/mp-weixin/config/url.js
index fc28712..ece4b88 100644
--- a/unpackage/dist/build/mp-weixin/config/url.js
+++ b/unpackage/dist/build/mp-weixin/config/url.js
@@ -1 +1 @@
-"use strict";exports.URL="https://unifans.gxfs123.com/api",exports.appid="wxe752f45e7f7aa271";
+"use strict";exports.URL="https://unifans.gxfs123.com/api",exports.appid="wx2165f0be356ae7a9";
diff --git a/unpackage/dist/build/mp-weixin/config/user.js b/unpackage/dist/build/mp-weixin/config/user.js
index 7573271..66590c3 100644
--- a/unpackage/dist/build/mp-weixin/config/user.js
+++ b/unpackage/dist/build/mp-weixin/config/user.js
@@ -1 +1 @@
-"use strict";const e=require("./http.js");exports.cancelOrder=r=>e.request({url:"/orderInfo/cancelOrder",method:"get",data:r}),exports.checkOrdersByStatus=(r,t)=>{const o=t.join(",");return e.request({url:`/app/order/list?deviceNo=${r}&orderStatus=${o}`,method:"get",hideLoading:!0,ignoreEmptyError:!0})},exports.confirmPaymentAndRent=r=>(console.log(`确认支付并弹出风扇, orderId: ${r}`),e.request({url:`/app/device/confirmPaymentAndRent?orderId=${r}`,method:"post"})),exports.getDeviceInfo=r=>e.request({url:`/app/device/${r}`,method:"get"}),exports.getMyIndexInfo=r=>e.request({url:"/app/user/userInfo",method:"get",data:r}),exports.getOrderByOrderNo=r=>e.request({url:`/app/order/byOrderNo/${r}`,method:"get",hideLoading:!0}),exports.getOrderByOrderNoScore=r=>(console.log("通过订单号获取支付分订单信息",r),e.request({url:`/app/wx-payment/score/create/${r}`,method:"get",hideLoading:!0})),exports.getOrderByOrderNoScorePayStatus=r=>(console.log("通过订单号获取支付分订单状态",r),e.request({url:`/app/wx-payment/score/status/${r}`,method:"get",hideLoading:!0})),exports.getOrderList=r=>e.request({url:"/app/order/list",method:"get",data:r,hideLoading:!0}),exports.login=r=>e.request({url:"/app/user/login",method:"get",data:r}),exports.queryById=r=>(console.log(`查询订单详情, orderId: ${r}`),e.request({url:`/app/order/${r}`,method:"get",hideLoading:!0})),exports.rentPowerBank=(r,t)=>e.request({url:"/app/device/rentPowerBank",method:"post",data:{deviceNo:r,phone:t}}),exports.updateOrderPackage=r=>(console.log("更新订单套餐信息:",r),e.request({url:"/app/device/updateOrderPackage",method:"post",data:r})),exports.updateUserBalance=r=>e.request({url:`/app/user/updateBalance/${r}`,method:"post",hideLoading:!0}),exports.withdrawDeposit=r=>(console.log("调用提现API,订单号:",r),e.request({url:`/app/withdraw/add/${r}`,method:"get",hideLoading:!0}));
+"use strict";const e=require("./http.js");exports.cancelOrder=r=>e.request({url:`/device/order/clear/${r.orderId}`,method:"get",data:r}),exports.checkOrdersByStatus=(r,t)=>{const o=t.join(",");return e.request({url:`/app/order/list?deviceNo=${r}&orderStatus=${o}`,method:"get",hideLoading:!0,ignoreEmptyError:!0})},exports.confirmPaymentAndRent=r=>(console.log(`确认支付并弹出风扇, orderId: ${r}`),e.request({url:`/app/device/confirmPaymentAndRent?orderId=${r}`,method:"GET"})),exports.getDeviceInfo=r=>e.request({url:`/app/device/${r}`,method:"get"}),exports.getMyIndexInfo=r=>e.request({url:"/app/user/userInfo",method:"get",data:r}),exports.getOrderByOrderNo=r=>e.request({url:`/app/order/byOrderNo/${r}`,method:"get",hideLoading:!0}),exports.getOrderByOrderNoScore=r=>(console.log("通过订单号获取支付分订单信息",r),e.request({url:`/app/wx-payment/score/create/${r}`,method:"get",hideLoading:!0})),exports.getOrderByOrderNoScorePayStatus=r=>(console.log("通过订单号获取支付分订单状态",r),e.request({url:`/app/wx-payment/score/status/${r}`,method:"get",hideLoading:!0})),exports.getOrderList=r=>e.request({url:"/app/order/list",method:"get",data:r,hideLoading:!0}),exports.login=r=>e.request({url:"/app/user/login",method:"get",data:r}),exports.queryById=r=>(console.log(`查询订单详情, orderId: ${r}`),e.request({url:`/app/order/${r}`,method:"get",hideLoading:!0})),exports.rentPowerBank=(r,t)=>e.request({url:"/app/device/rentPowerBank",method:"post",data:{deviceNo:r,phone:t}}),exports.updateOrderPackage=r=>(console.log("更新订单套餐信息:",r),e.request({url:"/app/device/updateOrderPackage",method:"post",data:r})),exports.updateUserBalance=r=>e.request({url:`/app/user/updateBalance/${r}`,method:"post",hideLoading:!0}),exports.withdrawDeposit=r=>(console.log("调用提现API,订单号:",r),e.request({url:`/app/withdraw/add/${r}`,method:"get",hideLoading:!0}));
diff --git a/unpackage/dist/build/mp-weixin/pages/device/detail.js b/unpackage/dist/build/mp-weixin/pages/device/detail.js
index 9f50b9c..6272934 100644
--- a/unpackage/dist/build/mp-weixin/pages/device/detail.js
+++ b/unpackage/dist/build/mp-weixin/pages/device/detail.js
@@ -1 +1 @@
-"use strict";const e=require("../../common/vendor.js"),a=require("../../common/assets.js"),t=require("../../config/user.js"),o=require("../../util/index.js"),i={__name:"detail",setup(i){const r=e.ref({}),n=e.ref(""),s=e.ref("一号教学楼大厅"),d=e.ref(95),c=e.ref(!1),l=e.reactive({text:"可使用",class:"available"}),u=e.ref(!0),v=e.ref("");e.onLoad((e=>{n.value=e.deviceNo,g(),console.log(e.deviceNo),p()}));const p=async()=>{const e=await t.getDeviceInfo(n.value);200==e.code&&(r.value=e.data.device||{},r.value.deviceLocation?s.value=r.value.deviceLocation:e.data.position&&e.data.position.name&&(s.value=e.data.position.name),r.value.status&&("online"===r.value.status?(l.text="可使用",l.class="available"):"offline"===r.value.status&&(l.text="离线",l.class="offline")))},g=async()=>{try{const a=await e.index.$api.checkActiveOrder();if(a.hasOrder){const t=a.order;"waiting_for_payment"===t.status?e.index.redirectTo({url:`/pages/order/payment?orderId=${t.orderId}&deviceId=${n.value}`}):"in_used"===t.status&&e.index.redirectTo({url:`/pages/device/return?deviceId=${n.value}`})}}catch(a){e.index.showToast({title:"订单状态查询失败",icon:"none"})}},m=a=>{u.value?w(a):e.index.showModal({title:"提示",content:"请先登录后再操作",confirmText:"去登录",success:a=>{a.confirm&&e.index.navigateTo({url:"/pages/login/index"})}})},x=e.reactive({time:"1小时",price:"5.00"}),f=e.ref("99.00"),w=async a=>{try{e.index.showLoading({title:"处理中"});const d=await t.rentPowerBank(n.value,v.value);if(200!==d.code)throw new Error(d.msg||"设备租借失败");const c=d.data;if("wx-pay"==a){e.index.hideLoading();const a=await t.getOrderByOrderNo(c.orderNo);console.log(a);try{let e=0;e=x.time.includes("小时")?60*parseInt(x.time):x.time.includes("分钟")?parseInt(x.time):60*parseInt(x.time);const a=await t.updateOrderPackage({orderId:c.orderId,packageTime:e,packagePrice:parseFloat(x.price)});200!==a.code?console.warn("更新订单套餐信息失败:",a.msg):console.log("订单套餐信息已提前更新")}catch(i){console.error("更新订单套餐信息时出错:",i)}const o=parseFloat(r.value.depositAmount),n=(o+parseFloat(x.price)).toFixed(2);e.index.hideLoading(),e.index.redirectTo({url:`/pages/order/payment?orderId=${c.orderId}&packageTimeHours=${x.time.replace("小时","")}&packagePrice=${x.price}&totalAmount=${n}&depositAmount=${f.value}${r.value&&r.value.feeConfig?"&feeConfig="+encodeURIComponent(r.value.feeConfig):""}`})}else{{e.index.hideLoading();const a=await t.getOrderByOrderNoScore(c.orderNo);if(e.index.hideLoading(),a&&200===a.code)try{if("0"==(await o.initiateWeChatScorePayment(a)).errCode){await t.getOrderByOrderNoScorePayStatus(c.orderNo);e.index.showToast({title:"设备租借成功",icon:"success"}),setTimeout((()=>{e.index.redirectTo({url:"/pages/order/index"})}),1500)}}catch(s){e.index.showToast({title:"支付分调用失败,请重试",icon:"none"})}else e.index.showToast({title:(null==a?void 0:a.msg)||"获取支付参数失败",icon:"none"})}}}catch(d){e.index.hideLoading(),e.index.showToast({title:d.message||"租借失败,请重试",icon:"none"})}};return(t,o)=>({a:e.t(l.text),b:e.n(l.class),c:e.t(n.value),d:a._imports_0$3,e:e.t(s.value),f:a._imports_1$2,g:d.value<20?1:"",h:e.t(d.value),i:a._imports_0$2,j:e.t(c.value?"归还设备":"免押金租借"),k:c.value?1:"",l:e.o((e=>m("wx-score-pay"))),m:e.o((e=>m("wx-pay")))})}},r=e._export_sfc(i,[["__scopeId","data-v-22a861f0"]]);wx.createPage(r);
+"use strict";const e=require("../../common/vendor.js"),a=require("../../common/assets.js"),t=require("../../config/user.js"),o=require("../../util/index.js"),i={__name:"detail",setup(i){const r=e.ref({}),n=e.ref(""),d=e.ref("一号教学楼大厅"),s=e.ref(95),c=e.ref(!1),l=e.reactive({text:"可使用",class:"available"}),u=e.ref(!0),v=e.ref("");e.onLoad((e=>{n.value=e.deviceNo,g(),console.log(e.deviceNo),p()}));const p=async()=>{const e=await t.getDeviceInfo(n.value);200==e.code&&(r.value=e.data.device||{},r.value.deviceLocation?d.value=r.value.deviceLocation:e.data.position&&e.data.position.name&&(d.value=e.data.position.name),r.value.status&&("online"===r.value.status?(l.text="可使用",l.class="available"):"offline"===r.value.status&&(l.text="离线",l.class="offline")))},g=async()=>{try{const a=await e.index.$api.checkActiveOrder();if(a.hasOrder){const t=a.order;"waiting_for_payment"===t.status?e.index.redirectTo({url:`/pages/order/payment?orderId=${t.orderId}&deviceId=${n.value}`}):"in_used"===t.status&&e.index.redirectTo({url:`/pages/device/return?deviceId=${n.value}`})}}catch(a){e.index.showToast({title:"订单状态查询失败",icon:"none"})}},m=a=>{u.value?w(a):e.index.showModal({title:"提示",content:"请先登录后再操作",confirmText:"去登录",success:a=>{a.confirm&&e.index.navigateTo({url:"/pages/login/index"})}})},x=e.reactive({time:"1小时",price:"5.00"}),f=e.ref("99.00"),w=async a=>{try{e.index.showLoading({title:"处理中"});const s=await t.rentPowerBank(n.value,v.value);if(200!==s.code)throw new Error(s.msg||"设备租借失败");const c=s.data;if("wx-pay"==a){e.index.hideLoading();const a=await t.getOrderByOrderNo(c.orderNo);console.log(a);try{let e=0;e=x.time.includes("小时")?60*parseInt(x.time):x.time.includes("分钟")?parseInt(x.time):60*parseInt(x.time);const a=await t.updateOrderPackage({orderId:c.orderId,packageTime:e,packagePrice:parseFloat(x.price)});200!==a.code?console.warn("更新订单套餐信息失败:",a.msg):console.log("订单套餐信息已提前更新")}catch(i){console.error("更新订单套餐信息时出错:",i)}const o=parseFloat(r.value.depositAmount),n=(o+parseFloat(x.price)).toFixed(2);e.index.hideLoading(),e.index.redirectTo({url:`/pages/order/payment?orderId=${c.orderId}&packageTimeHours=${x.time.replace("小时","")}&packagePrice=${x.price}&totalAmount=${n}&depositAmount=${f.value}${r.value&&r.value.feeConfig?"&feeConfig="+encodeURIComponent(r.value.feeConfig):""}`})}else if("wx-score-pay"==a){e.index.hideLoading();const a=await t.getOrderByOrderNoScore(c.orderNo);if(e.index.hideLoading(),a&&200===a.code)try{if("0"==(await o.initiateWeChatScorePayment(a)).errCode){const a=await t.getOrderByOrderNoScorePayStatus(c.orderNo);console.log(a.data.orderStatus),"in_used"==a.data.orderStatus?(e.index.showToast({title:"设备租借成功",icon:"success"}),setTimeout((()=>{e.index.redirectTo({url:"/pages/order/index"})}),1500)):"waiting_for_payment"==a.data.orderStatus&&(e.index.showToast({title:"设备租借失败,订单已取消",icon:"error"}),await t.cancelOrder({orderId:c.orderNo}),setTimeout((()=>{e.index.switchTab({url:"/pages/index/index"})}),1500))}}catch(d){e.index.showToast({title:"支付分调用失败,请重试",icon:"none"})}else e.index.showToast({title:(null==a?void 0:a.msg)||"获取支付参数失败",icon:"none"})}}catch(s){e.index.hideLoading(),e.index.showToast({title:s.message||"租借失败,请重试",icon:"none"})}};return(t,o)=>({a:e.t(l.text),b:e.n(l.class),c:e.t(n.value),d:a._imports_0$3,e:e.t(d.value),f:a._imports_1$2,g:s.value<20?1:"",h:e.t(s.value),i:a._imports_0$2,j:e.t(c.value?"归还设备":"免押金租借"),k:c.value?1:"",l:e.o((e=>m("wx-score-pay"))),m:e.o((e=>m("wx-pay")))})}},r=e._export_sfc(i,[["__scopeId","data-v-2faa63bb"]]);wx.createPage(r);
diff --git a/unpackage/dist/build/mp-weixin/pages/device/detail.wxml b/unpackage/dist/build/mp-weixin/pages/device/detail.wxml
index 956d8e4..4e189f7 100644
--- a/unpackage/dist/build/mp-weixin/pages/device/detail.wxml
+++ b/unpackage/dist/build/mp-weixin/pages/device/detail.wxml
@@ -1 +1 @@
-当前位置{{e}}电池电量{{h}}%¥5.00/小时封顶 ¥99前15分钟内归还免费不足60分钟按60分钟计费持续计费至99元视为买断请在使用前检查设备是否完好请在指定区域内使用设备归还时请确保设备完好,避免损坏
\ No newline at end of file
+当前位置{{e}}电池电量{{h}}%¥5.00/小时封顶 ¥99前15分钟内归还免费不足60分钟按60分钟计费持续计费至99元视为买断请在使用前检查设备是否完好请在指定区域内使用设备归还时请确保设备完好,避免损坏
\ No newline at end of file
diff --git a/unpackage/dist/build/mp-weixin/pages/device/detail.wxss b/unpackage/dist/build/mp-weixin/pages/device/detail.wxss
index 4e4d744..f503517 100644
--- a/unpackage/dist/build/mp-weixin/pages/device/detail.wxss
+++ b/unpackage/dist/build/mp-weixin/pages/device/detail.wxss
@@ -1 +1 @@
-.container.data-v-22a861f0{min-height:100vh;background-color:#f5f7fa;padding:30rpx 30rpx 240rpx;box-sizing:border-box}.device-header.data-v-22a861f0{display:flex;flex-direction:column;margin-bottom:30rpx}.device-header .device-status-card.data-v-22a861f0{display:flex;align-items:center;margin-bottom:20rpx}.device-header .device-status-card .status-indicator.data-v-22a861f0{width:20rpx;height:20rpx;border-radius:50%;margin-right:10rpx}.device-header .device-status-card.available .status-indicator.data-v-22a861f0{background-color:#10c469;box-shadow:0 0 10rpx rgba(16,196,105,.5)}.device-header .device-status-card.available .status-text.data-v-22a861f0{color:#10c469}.device-header .device-status-card.offline .status-indicator.data-v-22a861f0{background-color:#9a9a9a}.device-header .device-status-card.offline .status-text.data-v-22a861f0{color:#9a9a9a}.device-header .device-status-card .status-text.data-v-22a861f0{font-size:28rpx;font-weight:500}.device-header .device-title .name.data-v-22a861f0{font-size:48rpx;font-weight:700;color:#333}.device-header .device-title .device-meta.data-v-22a861f0{margin-top:10rpx;display:flex;align-items:center}.device-header .device-title .device-meta .id-label.data-v-22a861f0{font-size:26rpx;color:#999}.device-header .device-title .device-meta .id-value.data-v-22a861f0{font-size:26rpx;color:#666}.card.data-v-22a861f0{background-color:#fff;border-radius:24rpx;box-shadow:0 4rpx 24rpx rgba(0,0,0,.03);padding:30rpx;margin-bottom:30rpx}.card .card-header.data-v-22a861f0{display:flex;align-items:center;justify-content:space-between;margin-bottom:24rpx}.card .card-header .card-title.data-v-22a861f0{font-size:32rpx;font-weight:600;color:#333}.device-info-card .card-row.data-v-22a861f0{display:flex;justify-content:space-between}.device-info-card .card-item.data-v-22a861f0{display:flex;align-items:center;flex:1}.device-info-card .card-item .item-icon.data-v-22a861f0{width:60rpx;height:60rpx;border-radius:12rpx;margin-right:20rpx;display:flex;align-items:center;justify-content:center;font-size:30rpx;color:#fff}.device-info-card .card-item .item-icon.location-icon.data-v-22a861f0{background:linear-gradient(135deg,#40c9ff,#32a5ff)}.device-info-card .card-item .item-icon.battery-icon.data-v-22a861f0{background:linear-gradient(135deg,#33db92,#10c469)}.device-info-card .card-item .item-icon.battery-icon.battery-low.data-v-22a861f0{background:linear-gradient(135deg,#ff7676,#f54f4f)}.device-info-card .card-item .item-content.data-v-22a861f0{display:flex;flex-direction:column}.device-info-card .card-item .item-content .item-label.data-v-22a861f0{font-size:26rpx;color:#999;margin-bottom:4rpx}.device-info-card .card-item .item-content .item-value.data-v-22a861f0{font-size:30rpx;color:#333;font-weight:500}.pricing-card .pricing-banner.data-v-22a861f0{background:linear-gradient(to right,#f8f9ff,#e8f0ff);border-radius:16rpx;padding:30rpx;margin-bottom:30rpx;display:flex;flex-direction:column;align-items:center}.pricing-card .pricing-banner .pricing-main.data-v-22a861f0{display:flex;align-items:flex-end}.pricing-card .pricing-banner .pricing-main .price.data-v-22a861f0{font-size:60rpx;font-weight:700;color:#ff6b6b}.pricing-card .pricing-banner .pricing-main .unit.data-v-22a861f0{font-size:28rpx;color:#999;margin-left:4rpx;margin-bottom:10rpx}.pricing-card .pricing-banner .cap-price.data-v-22a861f0{margin-top:10rpx;font-size:26rpx;color:#666;background-color:rgba(255,107,107,.1);padding:6rpx 20rpx;border-radius:20rpx}.pricing-card .pricing-rules .rule-item.data-v-22a861f0{display:flex;align-items:center;margin-bottom:20rpx}.pricing-card .pricing-rules .rule-item.data-v-22a861f0:last-child{margin-bottom:0}.pricing-card .pricing-rules .rule-item .rule-dot.data-v-22a861f0{width:10rpx;height:10rpx;border-radius:50%;background-color:#ff6b6b;margin-right:16rpx}.pricing-card .pricing-rules .rule-item .rule-text.data-v-22a861f0{font-size:28rpx;color:#666}.pricing-card .pricing-rules .rule-item .rule-text .highlight.data-v-22a861f0{color:#ff6b6b;font-weight:700}.phone-card .phone-input-container .input-wrapper.data-v-22a861f0{display:flex;align-items:center;height:88rpx;background-color:#f5f7fa;border-radius:16rpx;padding:0 24rpx}.phone-card .phone-input-container .input-wrapper .prefix.data-v-22a861f0{font-size:28rpx;color:#666;margin-right:16rpx;padding-right:16rpx;border-right:1px solid #e0e0e0}.phone-card .phone-input-container .input-wrapper .phone-input.data-v-22a861f0{flex:1;height:88rpx;font-size:28rpx;color:#333;padding-left:10rpx}.phone-card .phone-input-container .phone-tip.data-v-22a861f0{font-size:24rpx;color:#999;margin-top:16rpx;display:block}.notice-card .notice-items .notice-item.data-v-22a861f0{display:flex;align-items:flex-start;margin-bottom:16rpx}.notice-card .notice-items .notice-item.data-v-22a861f0:last-child{margin-bottom:0}.notice-card .notice-items .notice-item .notice-dot.data-v-22a861f0{width:10rpx;height:10rpx;border-radius:50%;background-color:#32a5ff;margin-right:16rpx;margin-top:12rpx}.notice-card .notice-items .notice-item .notice-text.data-v-22a861f0{font-size:28rpx;color:#666;line-height:1.6}.footer.data-v-22a861f0{position:fixed;bottom:0;left:0;right:0;background-color:#fff;padding:20rpx 30rpx;padding-bottom:calc(20rpx + env(safe-area-inset-bottom));box-shadow:0 -2rpx 20rpx rgba(0,0,0,.05);z-index:100;display:flex;flex-direction:column;--footer-height: 180rpx}.footer .wechat-credit.data-v-22a861f0{display:flex;align-items:center;justify-content:center;margin-bottom:20rpx}.footer .wechat-credit .wx-icon.data-v-22a861f0{width:50rpx;height:40rpx;margin-right:10rpx}.footer .wechat-credit .credit-text.data-v-22a861f0{font-size:24rpx;color:#07c160;display:flex;align-items:center}.footer .wechat-credit .credit-text .credit-divider.data-v-22a861f0{margin:0 10rpx}.footer .wechat-credit .credit-text .credit-score.data-v-22a861f0{font-weight:500}.footer .rent-button.data-v-22a861f0{height:92rpx;border-radius:46rpx;background:linear-gradient(135deg,#07c160,#10d673);color:#fff;font-size:32rpx;font-weight:600;display:flex;align-items:center;justify-content:center;border:none;width:90%}.footer .rent-button.return-button.data-v-22a861f0{background:linear-gradient(135deg,#ff9800,#ffb74d)}.footer .rent-button.data-v-22a861f0:active{transform:scale(.98);opacity:.9}
+.container.data-v-2faa63bb{min-height:100vh;background-color:#f5f7fa;padding:30rpx 30rpx 300rpx;box-sizing:border-box}.device-header.data-v-2faa63bb{display:flex;flex-direction:column;margin-bottom:30rpx}.device-header .device-status-card.data-v-2faa63bb{display:flex;align-items:center;margin-bottom:20rpx}.device-header .device-status-card .status-indicator.data-v-2faa63bb{width:20rpx;height:20rpx;border-radius:50%;margin-right:10rpx}.device-header .device-status-card.available .status-indicator.data-v-2faa63bb{background-color:#10c469;box-shadow:0 0 10rpx rgba(16,196,105,.5)}.device-header .device-status-card.available .status-text.data-v-2faa63bb{color:#10c469}.device-header .device-status-card.offline .status-indicator.data-v-2faa63bb{background-color:#9a9a9a}.device-header .device-status-card.offline .status-text.data-v-2faa63bb{color:#9a9a9a}.device-header .device-status-card .status-text.data-v-2faa63bb{font-size:28rpx;font-weight:500}.device-header .device-title .name.data-v-2faa63bb{font-size:48rpx;font-weight:700;color:#333}.device-header .device-title .device-meta.data-v-2faa63bb{margin-top:10rpx;display:flex;align-items:center}.device-header .device-title .device-meta .id-label.data-v-2faa63bb{font-size:26rpx;color:#999}.device-header .device-title .device-meta .id-value.data-v-2faa63bb{font-size:26rpx;color:#666}.card.data-v-2faa63bb{background-color:#fff;border-radius:24rpx;box-shadow:0 4rpx 24rpx rgba(0,0,0,.03);padding:30rpx;margin-bottom:30rpx}.card .card-header.data-v-2faa63bb{display:flex;align-items:center;justify-content:space-between;margin-bottom:24rpx}.card .card-header .card-title.data-v-2faa63bb{font-size:32rpx;font-weight:600;color:#333}.device-info-card .card-row.data-v-2faa63bb{display:flex;justify-content:space-between}.device-info-card .card-item.data-v-2faa63bb{display:flex;align-items:center;flex:1}.device-info-card .card-item .item-icon.data-v-2faa63bb{width:60rpx;height:60rpx;border-radius:12rpx;margin-right:20rpx;display:flex;align-items:center;justify-content:center;font-size:30rpx;color:#fff}.device-info-card .card-item .item-icon.location-icon.data-v-2faa63bb{background:linear-gradient(135deg,#40c9ff,#32a5ff)}.device-info-card .card-item .item-icon.battery-icon.data-v-2faa63bb{background:linear-gradient(135deg,#33db92,#10c469)}.device-info-card .card-item .item-icon.battery-icon.battery-low.data-v-2faa63bb{background:linear-gradient(135deg,#ff7676,#f54f4f)}.device-info-card .card-item .item-content.data-v-2faa63bb{display:flex;flex-direction:column}.device-info-card .card-item .item-content .item-label.data-v-2faa63bb{font-size:26rpx;color:#999;margin-bottom:4rpx}.device-info-card .card-item .item-content .item-value.data-v-2faa63bb{font-size:30rpx;color:#333;font-weight:500}.pricing-card .pricing-banner.data-v-2faa63bb{background:linear-gradient(to right,#f8f9ff,#e8f0ff);border-radius:16rpx;padding:30rpx;margin-bottom:30rpx;display:flex;flex-direction:column;align-items:center}.pricing-card .pricing-banner .pricing-main.data-v-2faa63bb{display:flex;align-items:flex-end}.pricing-card .pricing-banner .pricing-main .price.data-v-2faa63bb{font-size:60rpx;font-weight:700;color:#ff6b6b}.pricing-card .pricing-banner .pricing-main .unit.data-v-2faa63bb{font-size:28rpx;color:#999;margin-left:4rpx;margin-bottom:10rpx}.pricing-card .pricing-banner .cap-price.data-v-2faa63bb{margin-top:10rpx;font-size:26rpx;color:#666;background-color:rgba(255,107,107,.1);padding:6rpx 20rpx;border-radius:20rpx}.pricing-card .pricing-rules .rule-item.data-v-2faa63bb{display:flex;align-items:center;margin-bottom:16rpx}.pricing-card .pricing-rules .rule-item.data-v-2faa63bb:last-child{margin-bottom:0}.pricing-card .pricing-rules .rule-item .rule-dot.data-v-2faa63bb{width:10rpx;height:10rpx;border-radius:50%;background-color:#ff6b6b;margin-right:16rpx}.pricing-card .pricing-rules .rule-item .rule-text.data-v-2faa63bb{font-size:28rpx;color:#666}.pricing-card .pricing-rules .rule-item .rule-text .highlight.data-v-2faa63bb{color:#ff6b6b;font-weight:700}.phone-card .phone-input-container .input-wrapper.data-v-2faa63bb{display:flex;align-items:center;height:88rpx;background-color:#f5f7fa;border-radius:16rpx;padding:0 24rpx}.phone-card .phone-input-container .input-wrapper .prefix.data-v-2faa63bb{font-size:28rpx;color:#666;margin-right:16rpx;padding-right:16rpx;border-right:1px solid #e0e0e0}.phone-card .phone-input-container .input-wrapper .phone-input.data-v-2faa63bb{flex:1;height:88rpx;font-size:28rpx;color:#333;padding-left:10rpx}.phone-card .phone-input-container .phone-tip.data-v-2faa63bb{font-size:24rpx;color:#999;margin-top:16rpx;display:block}.notice-card .notice-items .notice-item.data-v-2faa63bb{display:flex;align-items:flex-start;margin-bottom:20rpx}.notice-card .notice-items .notice-item.data-v-2faa63bb:last-child{margin-bottom:0}.notice-card .notice-items .notice-item .notice-dot.data-v-2faa63bb{width:10rpx;height:10rpx;border-radius:50%;background-color:#32a5ff;margin-right:16rpx;margin-top:12rpx}.notice-card .notice-items .notice-item .notice-text.data-v-2faa63bb{font-size:28rpx;color:#666;line-height:1.6}.footer.data-v-2faa63bb{position:fixed;bottom:0;left:0;right:0;background-color:#fff;padding:20rpx 30rpx;padding-bottom:calc(20rpx + env(safe-area-inset-bottom));box-shadow:0 -2rpx 20rpx rgba(0,0,0,.05);z-index:100;display:flex;flex-direction:column;--footer-height: 180rpx}.footer .wechat-credit.data-v-2faa63bb{display:flex;align-items:center;justify-content:center;margin-bottom:20rpx}.footer .wechat-credit .wx-icon.data-v-2faa63bb{width:50rpx;height:40rpx;margin-right:10rpx}.footer .wechat-credit .credit-text.data-v-2faa63bb{font-size:24rpx;color:#07c160;display:flex;align-items:center}.footer .wechat-credit .credit-text .credit-divider.data-v-2faa63bb{margin:0 10rpx}.footer .wechat-credit .credit-text .credit-score.data-v-2faa63bb{font-weight:500}.footer .rent-button.data-v-2faa63bb{height:92rpx;border-radius:46rpx;background:linear-gradient(135deg,#07c160,#10d673);color:#fff;font-size:32rpx;font-weight:600;display:flex;align-items:center;justify-content:center;border:none;width:90%}.footer .rent-button.return-button.data-v-2faa63bb{background:linear-gradient(135deg,#ff9800,#ffb74d)}.footer .rent-button.data-v-2faa63bb:active{transform:scale(.98);opacity:.9}
diff --git a/unpackage/dist/build/mp-weixin/pages/index/index.js b/unpackage/dist/build/mp-weixin/pages/index/index.js
index 531dc8c..adf92ab 100644
--- a/unpackage/dist/build/mp-weixin/pages/index/index.js
+++ b/unpackage/dist/build/mp-weixin/pages/index/index.js
@@ -1 +1 @@
-"use strict";const e=require("../../common/vendor.js"),o=require("../../util/index.js"),n=require("../../config/url.js"),t=require("../../config/user.js"),i=require("../../common/assets.js"),a={methods:{async handleScan(){try{const d=await new Promise(((o,n)=>{e.index.scanCode({success:o,fail:n})}));console.log(d.path);let r=o.getQueryString(d.path,"deviceNo");if(console.log("扫码路径:",d.path),console.log("解析到的设备号:",r),!r)return void e.index.showToast({title:"无效的设备二维码",icon:"none"});e.index.getStorageSync("token")||await o.wxLogin();const c=await e.index.request({url:`${n.URL||"http://127.0.0.1:8080"}/app/order/inUse`,method:"GET",header:{Authorization:"Bearer "+e.index.getStorageSync("token"),Clientid:e.index.getStorageSync("client_id")}});if(console.log("使用中订单检查结果:",JSON.stringify(c)),200==c.statusCode&&200==c.data.code&&c.data.data){const o=c.data.data;return console.log("检测到使用中订单,准备跳转:",o),e.index.reLaunch({url:`/pages/return/index?orderId=${o.orderId}&deviceId=${r||o.deviceNo}`}),void console.log("已发起页面跳转")}const s=await e.index.request({url:`${n.URL||"http://127.0.0.1:8080"}/app/order/unpaid`,method:"GET",header:{Authorization:"Bearer "+e.index.getStorageSync("token"),Clientid:e.index.getStorageSync("client_id")}});if(console.log("待支付订单检查结果:",JSON.stringify(s)),200==s.statusCode&&200==s.data.code&&s.data.data){const o=s.data.data;console.log("检测到待支付订单,准备跳转:",o),e.index.navigateTo({url:`/pages/order/payment?orderId=${o.orderId}`})}else{console.log("无待支付订单,获取设备信息, deviceNo:",r);try{const o=await t.getDeviceInfo(r);if(200==o.code&&o.data&&o.data.device){const n=o.data.device;if(n.feeConfig){console.log("获取到设备feeConfig信息:",n.feeConfig);try{JSON.parse(n.feeConfig);e.index.navigateTo({url:`/pages/device/detail?deviceNo=${r}&feeConfig=${encodeURIComponent(n.feeConfig)}`})}catch(i){console.error("解析feeConfig失败:",i),e.index.navigateTo({url:`/pages/device/detail?deviceNo=${r}`})}}else e.index.navigateTo({url:`/pages/device/detail?deviceNo=${r}`})}else console.error("获取设备信息失败:",o.msg||"未知错误"),e.index.showToast({title:"获取设备信息失败",icon:"none"}),e.index.navigateTo({url:`/pages/device/detail?deviceNo=${r}`})}catch(a){console.error("获取设备信息异常:",a),e.index.showToast({title:"获取设备信息失败",icon:"none"}),e.index.navigateTo({url:`/pages/device/detail?deviceNo=${r}`})}}}catch(a){console.error("扫码处理失败:",a),e.index.showToast({title:"扫码失败",icon:"none"})}}}};const d=e._export_sfc(a,[["render",function(o,n,t,a,d,r){return{a:i._imports_0,b:i._imports_1,c:e.o(((...e)=>r.handleScan&&r.handleScan(...e)))}}],["__scopeId","data-v-deeaf54a"]]);wx.createPage(d);
+"use strict";const e=require("../../common/vendor.js"),o=require("../../util/index.js"),n=require("../../config/url.js"),t=require("../../config/user.js"),i=require("../../common/assets.js"),a={methods:{async handleScan(){try{const d=await new Promise(((o,n)=>{e.index.scanCode({success:o,fail:n})}));console.log(d.path);let r=o.getQueryString(d.path,"deviceNo");if(console.log("扫码路径:",d.path),console.log("解析到的设备号:",r),!r)return void e.index.showToast({title:"无效的设备二维码",icon:"none"});e.index.getStorageSync("token")||await o.wxLogin();const c=await e.index.request({url:`${n.URL||"http://127.0.0.1:8080"}/app/order/inUse`,method:"GET",header:{Authorization:"Bearer "+e.index.getStorageSync("token"),Clientid:e.index.getStorageSync("client_id")}});if(console.log("使用中订单检查结果:",JSON.stringify(c)),200==c.statusCode&&200==c.data.code&&c.data.data){const o=c.data.data;return console.log("检测到使用中订单,准备跳转:",o),e.index.reLaunch({url:`/pages/return/index?orderId=${o.orderId}&deviceId=${r||o.deviceNo}`}),void console.log("已发起页面跳转")}const s=await e.index.request({url:`${n.URL||"http://127.0.0.1:8080"}/app/order/unpaid`,method:"GET",header:{Authorization:"Bearer "+e.index.getStorageSync("token"),Clientid:e.index.getStorageSync("client_id")}});if(console.log("待支付订单检查结果:",JSON.stringify(s)),200==s.statusCode&&200==s.data.code&&s.data.data){const o=s.data.data;console.log("检测到待支付订单,准备跳转:",o),e.index.navigateTo({url:`/pages/order/payment?orderId=${o.orderId}`})}else{console.log("无待支付订单,获取设备信息, deviceNo:",r);try{const o=await t.getDeviceInfo(r);if(200==o.code&&o.data&&o.data.device){const n=o.data.device;if(n.feeConfig){console.log("获取到设备feeConfig信息:",n.feeConfig);try{JSON.parse(n.feeConfig);e.index.navigateTo({url:`/pages/device/detail?deviceNo=${r}&feeConfig=${encodeURIComponent(n.feeConfig)}`})}catch(i){console.error("解析feeConfig失败:",i),e.index.navigateTo({url:`/pages/device/detail?deviceNo=${r}`})}}else e.index.navigateTo({url:`/pages/device/detail?deviceNo=${r}`})}else console.error("获取设备信息失败:",o.msg||"未知错误"),e.index.showToast({title:"获取设备信息失败",icon:"none"}),e.index.navigateTo({url:`/pages/device/detail?deviceNo=${r}`})}catch(a){console.error("获取设备信息异常:",a),e.index.showToast({title:"获取设备信息失败",icon:"none"}),e.index.navigateTo({url:`/pages/device/detail?deviceNo=${r}`})}}}catch(a){console.error("扫码处理失败:",a),e.index.showToast({title:"扫码失败",icon:"none"})}}}};const d=e._export_sfc(a,[["render",function(o,n,t,a,d,r){return{a:i._imports_0,b:i._imports_1,c:e.o(((...e)=>r.handleScan&&r.handleScan(...e)))}}],["__scopeId","data-v-764894e1"]]);wx.createPage(d);
diff --git a/unpackage/dist/build/mp-weixin/pages/index/index.wxml b/unpackage/dist/build/mp-weixin/pages/index/index.wxml
index 715bffc..0b28732 100644
--- a/unpackage/dist/build/mp-weixin/pages/index/index.wxml
+++ b/unpackage/dist/build/mp-weixin/pages/index/index.wxml
@@ -1 +1 @@
-扫码使用扫描设备二维码即可使用或归还5.0元/小时15分钟内归还免费不足1小时按1小时计费封顶99元,计费达99元视为买断1扫码开锁2使用风扇3归还结算
\ No newline at end of file
+扫码使用扫描设备二维码即可使用或归还5.0元/小时15分钟内归还免费不足1小时按1小时计费封顶99元,计费达99元视为买断1扫码弹出2使用风扇3插入归还4结束订单
\ No newline at end of file
diff --git a/unpackage/dist/build/mp-weixin/pages/index/index.wxss b/unpackage/dist/build/mp-weixin/pages/index/index.wxss
index fb68e3b..548fde0 100644
--- a/unpackage/dist/build/mp-weixin/pages/index/index.wxss
+++ b/unpackage/dist/build/mp-weixin/pages/index/index.wxss
@@ -1 +1 @@
-.container.data-v-deeaf54a{min-height:100vh;background-color:#f6f7fb;padding-bottom:40rpx}.header.data-v-deeaf54a{height:300rpx;background:linear-gradient(135deg,#1e88e5,#29b6f6);position:relative;overflow:hidden}.header .header-bg.data-v-deeaf54a{position:absolute;left:0;top:0;width:100%;height:100%;z-index:1}.header .header-bg .circle-decoration.data-v-deeaf54a{position:absolute;border-radius:50%;background:rgba(255,255,255,.1)}.header .header-bg .circle-1.data-v-deeaf54a{width:240rpx;height:240rpx;right:-60rpx;top:-90rpx}.header .header-bg .circle-2.data-v-deeaf54a{width:160rpx;height:160rpx;left:-40rpx;bottom:30rpx;background:rgba(255,255,255,.08)}.header .header-bg .wave-decoration.data-v-deeaf54a{position:absolute;left:0;bottom:0;width:100%;height:40rpx;background-size:auto 100%;opacity:.6}.header .header-content.data-v-deeaf54a{position:relative;z-index:2;padding:40rpx 40rpx 0;height:100%;display:flex;flex-direction:column;justify-content:space-between}.header .header-content .brand-area.data-v-deeaf54a{display:flex;align-items:center}.header .header-content .brand-area .brand-logo.data-v-deeaf54a{width:90rpx;height:90rpx;margin-right:20rpx}.header .header-content .brand-area .brand-text.data-v-deeaf54a{display:flex;flex-direction:column}.header .header-content .brand-area .brand-text .title.data-v-deeaf54a{font-size:48rpx;color:#fff;font-weight:700;line-height:1.2;text-shadow:0 2rpx 4rpx rgba(0,0,0,.1)}.header .header-content .brand-area .brand-text .subtitle.data-v-deeaf54a{font-size:28rpx;color:rgba(255,255,255,.9)}.header .header-content .header-info.data-v-deeaf54a{display:flex;flex-wrap:wrap;gap:20rpx;margin-bottom:30rpx}.header .header-content .header-info .service-tag.data-v-deeaf54a{display:flex;align-items:center;background:rgba(255,255,255,.2);border-radius:40rpx;padding:10rpx 20rpx}.header .header-content .header-info .service-tag text.data-v-deeaf54a{font-size:24rpx;color:#fff}.header .header-content .header-info .service-tag .dot.data-v-deeaf54a{margin:0 8rpx;font-weight:700}.scan-section.data-v-deeaf54a{padding:0 30rpx;margin-top:-60rpx}.scan-section .scan-card.data-v-deeaf54a{background:#fff;border-radius:16rpx;box-shadow:0 10rpx 30rpx rgba(0,0,0,.05);padding:36rpx 0;display:flex;flex-direction:column;align-items:center}.scan-section .scan-card .scan-btn.data-v-deeaf54a{width:220rpx;height:220rpx;background:linear-gradient(135deg,#00b0ff,#0091ea);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;margin-bottom:24rpx;box-shadow:0 10rpx 20rpx rgba(0,176,255,.2);position:relative;transition:all .2s ease}.scan-section .scan-card .scan-btn.data-v-deeaf54a:active{transform:scale(.96)}.scan-section .scan-card .scan-btn .scan-icon.data-v-deeaf54a{width:80rpx;height:80rpx;margin-bottom:12rpx}.scan-section .scan-card .scan-btn .scan-text.data-v-deeaf54a{font-size:36rpx;color:#fff;font-weight:500}.scan-section .scan-card .scan-desc.data-v-deeaf54a{font-size:28rpx;color:#666}.price-card.data-v-deeaf54a{margin:30rpx;background:#fff;border-radius:16rpx;overflow:hidden;box-shadow:0 6rpx 20rpx rgba(0,0,0,.04)}.price-card .card-header.data-v-deeaf54a{padding:24rpx 30rpx;background:linear-gradient(to right,#f5f9ff,#fff);border-bottom:2rpx solid #f0f0f0}.price-card .card-header .card-title.data-v-deeaf54a{font-size:32rpx;font-weight:600;color:#333;position:relative;padding-left:20rpx}.price-card .card-header .card-title.data-v-deeaf54a:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:6rpx;height:28rpx;background:#2196f3;border-radius:3rpx}.price-card .deposit-free.data-v-deeaf54a{margin:20rpx 30rpx 0;padding:12rpx 16rpx;background:#f0f9ff;border-radius:8rpx;border-left:4rpx solid #03A9F4;display:flex;align-items:center}.price-card .deposit-free .deposit-icon.data-v-deeaf54a{width:40rpx;height:40rpx;margin-right:16rpx}.price-card .deposit-free .deposit-text.data-v-deeaf54a{font-size:26rpx;color:#03a9f4;font-weight:500}.price-card .price-rules.data-v-deeaf54a{padding:20rpx 30rpx 30rpx}.price-card .price-rules .price-item.data-v-deeaf54a{display:flex;flex-direction:column;align-items:center;margin-bottom:20rpx}.price-card .price-rules .price-item .price-tag.data-v-deeaf54a{font-size:60rpx;color:#ff6e00;font-weight:700;line-height:1}.price-card .price-rules .price-item .price-tag .unit.data-v-deeaf54a{font-size:32rpx;font-weight:400;margin-left:4rpx}.price-card .price-rules .price-item .price-desc.data-v-deeaf54a{font-size:28rpx;color:#666;margin-top:10rpx}.price-card .price-rules .divider.data-v-deeaf54a{height:2rpx;background-color:#f0f0f0;margin:20rpx 0 30rpx}.price-card .price-rules .rule-list .rule-item.data-v-deeaf54a{display:flex;align-items:flex-start;margin-bottom:20rpx}.price-card .price-rules .rule-list .rule-item.data-v-deeaf54a:last-child{margin-bottom:0}.price-card .price-rules .rule-list .rule-item .rule-dot.data-v-deeaf54a{width:12rpx;height:12rpx;background:#2196f3;border-radius:50%;margin:12rpx 16rpx 0 0;flex-shrink:0}.price-card .price-rules .rule-list .rule-item text.data-v-deeaf54a{font-size:28rpx;color:#666;line-height:1.5}.usage-steps.data-v-deeaf54a{margin:0 30rpx;background:#fff;border-radius:16rpx;box-shadow:0 6rpx 20rpx rgba(0,0,0,.04);overflow:hidden}.usage-steps .steps-header.data-v-deeaf54a{padding:24rpx 30rpx;background:linear-gradient(to right,#f5f9ff,#fff);border-bottom:2rpx solid #f0f0f0}.usage-steps .steps-header .steps-title.data-v-deeaf54a{font-size:32rpx;font-weight:600;color:#333;position:relative;padding-left:20rpx}.usage-steps .steps-header .steps-title.data-v-deeaf54a:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:6rpx;height:28rpx;background:#2196f3;border-radius:3rpx}.usage-steps .steps-container.data-v-deeaf54a{padding:40rpx 30rpx;display:flex;align-items:center;justify-content:space-between}.usage-steps .steps-container .step-item.data-v-deeaf54a{display:flex;flex-direction:column;align-items:center;flex:1}.usage-steps .steps-container .step-item .step-icon.data-v-deeaf54a{width:80rpx;height:80rpx;background:#f0f9ff;border:2rpx solid #e1f5fe;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:16rpx}.usage-steps .steps-container .step-item .step-icon .step-number.data-v-deeaf54a{font-size:36rpx;color:#2196f3;font-weight:600}.usage-steps .steps-container .step-item .step-text.data-v-deeaf54a{font-size:26rpx;color:#666}.usage-steps .steps-container .step-arrow.data-v-deeaf54a{width:40rpx;height:4rpx;background:#e1f5fe;position:relative}.usage-steps .steps-container .step-arrow.data-v-deeaf54a:after{content:"";position:absolute;right:0;top:50%;margin-top:-8rpx;border-left:12rpx solid #e1f5fe;border-top:8rpx solid transparent;border-bottom:8rpx solid transparent}
+.container.data-v-764894e1{min-height:100vh;background-color:#f6f7fb;padding-bottom:40rpx}.header.data-v-764894e1{height:300rpx;background:linear-gradient(135deg,#1e88e5,#29b6f6);position:relative;overflow:hidden}.header .header-bg.data-v-764894e1{position:absolute;left:0;top:0;width:100%;height:100%;z-index:1}.header .header-bg .circle-decoration.data-v-764894e1{position:absolute;border-radius:50%;background:rgba(255,255,255,.1)}.header .header-bg .circle-1.data-v-764894e1{width:240rpx;height:240rpx;right:-60rpx;top:-90rpx}.header .header-bg .circle-2.data-v-764894e1{width:160rpx;height:160rpx;left:-40rpx;bottom:30rpx;background:rgba(255,255,255,.08)}.header .header-bg .wave-decoration.data-v-764894e1{position:absolute;left:0;bottom:0;width:100%;height:40rpx;background-size:auto 100%;opacity:.6}.header .header-content.data-v-764894e1{position:relative;z-index:2;padding:40rpx 40rpx 0;height:100%;display:flex;flex-direction:column;justify-content:space-between}.header .header-content .brand-area.data-v-764894e1{display:flex;align-items:center}.header .header-content .brand-area .brand-logo.data-v-764894e1{width:90rpx;height:90rpx;margin-right:20rpx}.header .header-content .brand-area .brand-text.data-v-764894e1{display:flex;flex-direction:column}.header .header-content .brand-area .brand-text .title.data-v-764894e1{font-size:48rpx;color:#fff;font-weight:700;line-height:1.2;text-shadow:0 2rpx 4rpx rgba(0,0,0,.1)}.header .header-content .brand-area .brand-text .subtitle.data-v-764894e1{font-size:28rpx;color:rgba(255,255,255,.9)}.header .header-content .header-info.data-v-764894e1{display:flex;flex-wrap:wrap;gap:20rpx;margin-bottom:30rpx}.header .header-content .header-info .service-tag.data-v-764894e1{display:flex;align-items:center;background:rgba(255,255,255,.2);border-radius:40rpx;padding:10rpx 20rpx}.header .header-content .header-info .service-tag text.data-v-764894e1{font-size:24rpx;color:#fff}.header .header-content .header-info .service-tag .dot.data-v-764894e1{margin:0 8rpx;font-weight:700}.scan-section.data-v-764894e1{padding:0 30rpx}.scan-section .scan-card.data-v-764894e1{background:#fff;border-radius:16rpx;box-shadow:0 10rpx 30rpx rgba(0,0,0,.05);padding:36rpx 0;display:flex;flex-direction:column;align-items:center}.scan-section .scan-card .scan-btn.data-v-764894e1{width:220rpx;height:220rpx;background:linear-gradient(135deg,#00b0ff,#0091ea);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;margin-bottom:24rpx;box-shadow:0 10rpx 20rpx rgba(0,176,255,.2);position:relative;transition:all .2s ease}.scan-section .scan-card .scan-btn.data-v-764894e1:active{transform:scale(.96)}.scan-section .scan-card .scan-btn .scan-icon.data-v-764894e1{width:80rpx;height:80rpx;margin-bottom:12rpx}.scan-section .scan-card .scan-btn .scan-text.data-v-764894e1{font-size:36rpx;color:#fff;font-weight:500}.scan-section .scan-card .scan-desc.data-v-764894e1{font-size:28rpx;color:#666}.price-card.data-v-764894e1{margin:30rpx;background:#fff;border-radius:16rpx;overflow:hidden;box-shadow:0 6rpx 20rpx rgba(0,0,0,.04)}.price-card .card-header.data-v-764894e1{padding:24rpx 30rpx;background:linear-gradient(to right,#f5f9ff,#fff);border-bottom:2rpx solid #f0f0f0}.price-card .card-header .card-title.data-v-764894e1{font-size:32rpx;font-weight:600;color:#333;position:relative;padding-left:20rpx}.price-card .card-header .card-title.data-v-764894e1:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:6rpx;height:28rpx;background:#2196f3;border-radius:3rpx}.price-card .deposit-free.data-v-764894e1{margin:20rpx 30rpx 0;padding:12rpx 16rpx;background:#f0f9ff;border-radius:8rpx;border-left:4rpx solid #03A9F4;display:flex;align-items:center}.price-card .deposit-free .deposit-icon.data-v-764894e1{width:40rpx;height:40rpx;margin-right:16rpx}.price-card .deposit-free .deposit-text.data-v-764894e1{font-size:26rpx;color:#03a9f4;font-weight:500}.price-card .price-rules.data-v-764894e1{padding:20rpx 30rpx 30rpx}.price-card .price-rules .price-item.data-v-764894e1{display:flex;flex-direction:column;align-items:center;margin-bottom:20rpx}.price-card .price-rules .price-item .price-tag.data-v-764894e1{font-size:60rpx;color:#ff6e00;font-weight:700;line-height:1}.price-card .price-rules .price-item .price-tag .unit.data-v-764894e1{font-size:32rpx;font-weight:400;margin-left:4rpx}.price-card .price-rules .price-item .price-desc.data-v-764894e1{font-size:28rpx;color:#666;margin-top:10rpx}.price-card .price-rules .divider.data-v-764894e1{height:2rpx;background-color:#f0f0f0;margin:20rpx 0 30rpx}.price-card .price-rules .rule-list .rule-item.data-v-764894e1{display:flex;align-items:flex-start;margin-bottom:20rpx}.price-card .price-rules .rule-list .rule-item.data-v-764894e1:last-child{margin-bottom:0}.price-card .price-rules .rule-list .rule-item .rule-dot.data-v-764894e1{width:12rpx;height:12rpx;background:#2196f3;border-radius:50%;margin:12rpx 16rpx 0 0;flex-shrink:0}.price-card .price-rules .rule-list .rule-item text.data-v-764894e1{font-size:28rpx;color:#666;line-height:1.5}.usage-steps.data-v-764894e1{margin:0 30rpx;background:#fff;border-radius:16rpx;box-shadow:0 6rpx 20rpx rgba(0,0,0,.04);overflow:hidden}.usage-steps .steps-header.data-v-764894e1{padding:24rpx 30rpx;background:linear-gradient(to right,#f5f9ff,#fff);border-bottom:2rpx solid #f0f0f0}.usage-steps .steps-header .steps-title.data-v-764894e1{font-size:32rpx;font-weight:600;color:#333;position:relative;padding-left:20rpx}.usage-steps .steps-header .steps-title.data-v-764894e1:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:6rpx;height:28rpx;background:#2196f3;border-radius:3rpx}.usage-steps .steps-container.data-v-764894e1{padding:40rpx 30rpx;display:flex;align-items:center;justify-content:space-between}.usage-steps .steps-container .step-item.data-v-764894e1{display:flex;flex-direction:column;align-items:center;flex:1}.usage-steps .steps-container .step-item .step-icon.data-v-764894e1{width:80rpx;height:80rpx;background:#f0f9ff;border:2rpx solid #e1f5fe;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:16rpx}.usage-steps .steps-container .step-item .step-icon .step-number.data-v-764894e1{font-size:36rpx;color:#2196f3;font-weight:600}.usage-steps .steps-container .step-item .step-text.data-v-764894e1{font-size:26rpx;color:#666}.usage-steps .steps-container .step-arrow.data-v-764894e1{width:40rpx;height:4rpx;background:#e1f5fe;position:relative}.usage-steps .steps-container .step-arrow.data-v-764894e1:after{content:"";position:absolute;right:0;top:50%;margin-top:-8rpx;border-left:12rpx solid #e1f5fe;border-top:8rpx solid transparent;border-bottom:8rpx solid transparent}
diff --git a/unpackage/dist/build/mp-weixin/pages/order/index.js b/unpackage/dist/build/mp-weixin/pages/order/index.js
index 820b136..a5fd079 100644
--- a/unpackage/dist/build/mp-weixin/pages/order/index.js
+++ b/unpackage/dist/build/mp-weixin/pages/order/index.js
@@ -1 +1 @@
-"use strict";const t=require("../../common/vendor.js"),e=require("../../common/assets.js"),a=require("../../config/user.js"),s={__name:"index",setup(s){const o=t.ref(0),r=t.ref([]),n=t.reactive({0:{text:"待支付",class:"status-waiting"},1:{text:"使用中",class:"status-using"},2:{text:"已完成",class:"status-finished"},3:{text:"已取消",class:"status-cancelled"},waiting_for_payment:{text:"待支付",class:"status-waiting"},in_used:{text:"使用中",class:"status-using"},used_done:{text:"已完成",class:"status-finished"},order_cancelled:{text:"已取消",class:"status-cancelled"}}),i=t.reactive([{text:"全部",status:[]},{text:"待付款",status:["waiting_for_payment"]},{text:"使用中",status:["in_used"]},{text:"已完成",status:["used_done"]},{text:"已取消",status:["order_cancelled"]}]);t.onLoad((async t=>{if(t&&t.orderId)try{const e=await a.queryById(t.orderId);if(200===e.code&&e.data){const t=e.data,a=t.startTime||t.createTime||"",s={orderNo:t.orderId,status:t.orderStatus,deviceId:t.deviceNo,payWay:t.payWay,startTime:a,endTime:t.endTime||"",amount:t.payAmount||t.actualDeviceAmount||"0.00"};r.value=[s,...r.value];const o=i.findIndex((e=>e.status.includes(t.orderStatus)));-1!==o&&d(o)}}catch(e){console.error("获取订单详情失败:",e)}await c()}));const d=async t=>{o.value=t;const e=i[t].status[0];await c(e)},c=async e=>{try{null!=e&&(e={orderStatus:e});const t=await a.getOrderList(e);200===t.code&&t.data&&t.data.records&&(r.value=t.data.records.map((t=>{const e=t.startTime||t.createTime||"";return{orderNo:t.orderNo,orderId:t.orderId,orderStatus:t.orderStatus,deviceId:t.deviceNo,payWay:t.payWay,startTime:e,endTime:t.endTime||"",amount:t.payAmount||t.actualDeviceAmount||"0.00"}})))}catch(s){console.error("获取订单列表失败:",s),t.index.showToast({title:"获取订单列表失败",icon:"none"})}};return(s,u)=>t.e({a:t.f(i,((e,a,s)=>({a:t.t(e.text),b:a,c:o.value===a?1:"",d:t.o((t=>d(a)),a)}))),b:0===r.value.length},(r.value.length,{}),{c:t.f(r.value,((s,r,d)=>{var u,l;return t.e({a:t.t(s.orderNo),b:t.t(null==(u=n[s.orderStatus])?void 0:u.text),c:t.n(null==(l=n[s.orderStatus])?void 0:l.class),d:t.t(s.deviceId),e:"wx_score_pay"==s.payWay},"wx_score_pay"==s.payWay?{f:e._imports_0$2}:{},{g:t.t(s.startTime),h:t.t(s.endTime||"-"),i:t.t(s.amount),j:"waiting_for_payment"===s.status||"waiting_for_payment"===s.orderStatus},"waiting_for_payment"===s.status||"waiting_for_payment"===s.orderStatus?{k:t.o((e=>(async e=>{try{t.index.showLoading({title:"处理中"});const s=await a.confirmPaymentAndRent(e.orderId);if(200!==s.code)throw new Error(s.msg||"支付失败");t.index.hideLoading(),t.index.showToast({title:"支付成功",icon:"success"}),await c(i[o.value].status)}catch(s){t.index.hideLoading(),t.index.showToast({title:s.message||"支付失败",icon:"none"})}})(s)),r)}:{},{l:"waiting_for_payment"===s.status||"waiting_for_payment"===s.orderStatus},"waiting_for_payment"===s.status||"waiting_for_payment"===s.orderStatus?{m:t.o((e=>(async e=>{try{t.index.showModal({title:"确认取消",content:"确定要取消此订单吗?",success:async s=>{if(s.confirm){t.index.showLoading({title:"处理中"});const s=await a.cancelOrder({orderId:e.orderId});if(200!==s.code)throw new Error(s.msg||"取消订单失败");t.index.hideLoading(),t.index.showToast({title:"订单已取消",icon:"success"}),await c(i[o.value].status)}}})}catch(s){t.index.hideLoading(),t.index.showToast({title:s.message||"取消订单失败",icon:"none"})}})(s)),r)}:{},{n:"in_used"==s.status||"in_used"==s.orderStatus},"in_used"==s.status||"in_used"==s.orderStatus?{o:t.o((e=>{return a=s.deviceId,o=s.orderId,console.log(o),void t.index.navigateTo({url:`/pages/return/index?deviceId=${a}&orderId=${o}`});var a,o}),r)}:{},{p:t.o((e=>(e=>{t.index.navigateTo({url:`/pages/order/details?orderId=${e.orderId||e.orderNo}`})})(s)),r),q:"waiting_for_payment"===s.status||"waiting_for_payment"===s.orderStatus},"waiting_for_payment"===s.status||"waiting_for_payment"===s.orderStatus?{r:t.o((e=>(async e=>{try{200===(await a.getOrderByOrderNoScorePayStatus(e.orderNo)).code&&(t.index.showToast({title:"状态同步成功",icon:"success"}),await c(i[o.value].status))}catch(s){t.index.showToast({title:"同步状态失败",icon:"none"})}})(s)),r)}:{},{s:r})}))})}},o=t._export_sfc(s,[["__scopeId","data-v-385ef1a6"]]);wx.createPage(o);
+"use strict";const t=require("../../common/vendor.js"),e=require("../../common/assets.js"),a=require("../../config/user.js"),s={__name:"index",setup(s){const o=t.ref(0),r=t.ref([]),n=t.reactive({0:{text:"待支付",class:"status-waiting"},1:{text:"使用中",class:"status-using"},2:{text:"已完成",class:"status-finished"},3:{text:"已取消",class:"status-cancelled"},waiting_for_payment:{text:"待支付",class:"status-waiting"},in_used:{text:"使用中",class:"status-using"},used_done:{text:"已完成",class:"status-finished"},order_cancelled:{text:"已取消",class:"status-cancelled"}}),d=t.reactive([{text:"全部",status:[]},{text:"待付款",status:["waiting_for_payment"]},{text:"使用中",status:["in_used"]},{text:"已完成",status:["used_done"]},{text:"已取消",status:["order_cancelled"]}]);t.onLoad((async t=>{if(t&&t.orderId)try{const e=await a.queryById(t.orderId);if(200===e.code&&e.data){const t=e.data,a=t.startTime||t.createTime||"",s={orderNo:t.orderId,status:t.orderStatus,deviceId:t.deviceNo,payWay:t.payWay,startTime:a,endTime:t.endTime||"",amount:t.payAmount||t.actualDeviceAmount||"0.00"};r.value=[s,...r.value];const o=d.findIndex((e=>e.status.includes(t.orderStatus)));-1!==o&&i(o)}}catch(e){console.error("获取订单详情失败:",e)}await c()}));const i=async t=>{o.value=t;const e=d[t].status[0];await c(e)},c=async e=>{try{null!=e&&(e={orderStatus:e});const t=await a.getOrderList(e);200===t.code&&t.data&&t.data.records&&(r.value=t.data.records.map((t=>{const e=t.startTime||t.createTime||"";return{orderNo:t.orderNo,orderId:t.orderId,orderStatus:t.orderStatus,deviceId:t.deviceNo,payWay:t.payWay,startTime:e,endTime:t.endTime||"",amount:t.payAmount||t.actualDeviceAmount||"0.00"}})))}catch(s){console.error("获取订单列表失败:",s),t.index.showToast({title:"获取订单列表失败",icon:"none"})}};return(s,u)=>t.e({a:t.f(d,((e,a,s)=>({a:t.t(e.text),b:a,c:o.value===a?1:"",d:t.o((t=>i(a)),a)}))),b:0===r.value.length},(r.value.length,{}),{c:t.f(r.value,((s,r,i)=>{var u,l;return t.e({a:t.t(s.orderNo),b:t.t(null==(u=n[s.orderStatus])?void 0:u.text),c:t.n(null==(l=n[s.orderStatus])?void 0:l.class),d:t.t(s.deviceId),e:"wx_score_pay"==s.payWay},"wx_score_pay"==s.payWay?{f:e._imports_0$2}:{},{g:t.t(s.startTime),h:t.t(s.endTime||"-"),i:t.t(s.amount),j:"waiting_for_payment"===s.status||"waiting_for_payment"===s.orderStatus},"waiting_for_payment"===s.status||"waiting_for_payment"===s.orderStatus?{k:t.o((e=>(async e=>{try{t.index.showLoading({title:"处理中"});const s=await a.confirmPaymentAndRent(e.orderNo);if(200!==s.code)throw new Error(s.msg||"支付失败");t.index.hideLoading(),t.index.showToast({title:"支付成功",icon:"success"}),await c(d[o.value].status)}catch(s){t.index.hideLoading(),t.index.showToast({title:s.message||"支付失败",icon:"none"})}})(s)),r)}:{},{l:"waiting_for_payment"===s.status||"waiting_for_payment"===s.orderStatus},"waiting_for_payment"===s.status||"waiting_for_payment"===s.orderStatus?{m:t.o((e=>(async e=>{try{t.index.showModal({title:"确认取消",content:"确定要取消此订单吗?",success:async s=>{if(s.confirm){t.index.showLoading({title:"处理中"});const s=await a.cancelOrder({orderId:e.orderNo});if(!s)throw new Error(s.msg||"取消订单失败");t.index.hideLoading(),t.index.showToast({title:"订单已取消",icon:"success"}),await c()}}})}catch(s){t.index.hideLoading(),t.index.showToast({title:s.message||"取消订单失败",icon:"none"})}})(s)),r)}:{},{n:"in_used"==s.status||"in_used"==s.orderStatus},"in_used"==s.status||"in_used"==s.orderStatus?{o:t.o((e=>{return a=s.deviceId,o=s.orderId,console.log(o),void t.index.navigateTo({url:`/pages/return/index?deviceId=${a}&orderId=${o}`});var a,o}),r)}:{},{p:t.o((e=>(e=>{t.index.navigateTo({url:`/pages/order/details?orderId=${e.orderId||e.orderNo}`})})(s)),r),q:r})}))})}},o=t._export_sfc(s,[["__scopeId","data-v-2998ff8e"]]);wx.createPage(o);
diff --git a/unpackage/dist/build/mp-weixin/pages/order/index.wxml b/unpackage/dist/build/mp-weixin/pages/order/index.wxml
index f6fee8b..cf53bd4 100644
--- a/unpackage/dist/build/mp-weixin/pages/order/index.wxml
+++ b/unpackage/dist/build/mp-weixin/pages/order/index.wxml
@@ -1 +1 @@
-{{tab.a}}暂无订单记录共享风扇设备号:{{order.d}}微信支付分|免押租借押金租借开始时间:{{order.g}}结束时间:{{order.h}}
\ No newline at end of file
+{{tab.a}}暂无订单记录共享风扇设备号:{{order.d}}微信支付分|免押租借押金租借开始时间:{{order.g}}结束时间:{{order.h}}
\ No newline at end of file
diff --git a/unpackage/dist/build/mp-weixin/pages/order/index.wxss b/unpackage/dist/build/mp-weixin/pages/order/index.wxss
index ca43fa2..7933dc0 100644
--- a/unpackage/dist/build/mp-weixin/pages/order/index.wxss
+++ b/unpackage/dist/build/mp-weixin/pages/order/index.wxss
@@ -1 +1 @@
-.order-container.data-v-385ef1a6{min-height:100vh;background:#f7f8fa;padding-bottom:30rpx}.order-container .status-tabs.data-v-385ef1a6{display:flex;background:#fff;padding:0 20rpx;position:-webkit-sticky;position:sticky;top:0;z-index:10;box-shadow:0 2rpx 10rpx rgba(0,0,0,.05)}.order-container .status-tabs .tab-item.data-v-385ef1a6{flex:1;height:90rpx;display:flex;align-items:center;justify-content:center;font-size:28rpx;color:#666;position:relative}.order-container .status-tabs .tab-item.active.data-v-385ef1a6{color:#1976d2;font-weight:500}.order-container .status-tabs .tab-item.active.data-v-385ef1a6:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:40rpx;height:4rpx;background:#1976d2;border-radius:2rpx}.order-container .order-list.data-v-385ef1a6{padding:20rpx}.order-container .order-list .order-item.data-v-385ef1a6{background:#fff;border-radius:16rpx;margin-bottom:20rpx;overflow:hidden;box-shadow:0 2rpx 12rpx rgba(0,0,0,.04)}.order-container .order-list .order-item .order-header.data-v-385ef1a6{display:flex;justify-content:space-between;align-items:center;padding:24rpx;border-bottom:1rpx solid #f0f0f0}.order-container .order-list .order-item .order-header .order-id.data-v-385ef1a6{font-size:26rpx;color:#666}.order-container .order-list .order-item .order-header .order-status.data-v-385ef1a6{font-size:26rpx;font-weight:500}.order-container .order-list .order-item .order-header .order-status.status-waiting.data-v-385ef1a6{color:#ff9800}.order-container .order-list .order-item .order-header .order-status.status-using.data-v-385ef1a6{color:#2196f3}.order-container .order-list .order-item .order-header .order-status.status-finished.data-v-385ef1a6{color:#4caf50}.order-container .order-list .order-item .order-header .order-status.status-cancelled.data-v-385ef1a6{color:#9e9e9e}.order-container .order-list .order-item .order-body.data-v-385ef1a6{padding:24rpx}.order-container .order-list .order-item .order-body .device-info.data-v-385ef1a6{margin-bottom:20rpx;display:flex;justify-content:space-between;align-items:flex-start}.order-container .order-list .order-item .order-body .device-info .device-left.data-v-385ef1a6{flex:1;margin-right:20rpx}.order-container .order-list .order-item .order-body .device-info .device-left .device-name.data-v-385ef1a6{font-size:32rpx;font-weight:500;color:#333;margin-bottom:6rpx}.order-container .order-list .order-item .order-body .device-info .device-left .device-id.data-v-385ef1a6{font-size:26rpx;color:#999;margin-bottom:0}.order-container .order-list .order-item .order-body .device-info .device-right .payment-badge.data-v-385ef1a6{display:inline-flex;align-items:center;padding:6rpx 12rpx;border-radius:8rpx;white-space:nowrap}.order-container .order-list .order-item .order-body .device-info .device-right .payment-badge.wx-score.data-v-385ef1a6{background:rgba(7,193,96,.08)}.order-container .order-list .order-item .order-body .device-info .device-right .payment-badge.wx-score .badge-icon.data-v-385ef1a6{width:32rpx;height:26rpx;margin-right:8rpx}.order-container .order-list .order-item .order-body .device-info .device-right .payment-badge.wx-score .badge-text.data-v-385ef1a6{font-size:22rpx;color:#07c160;display:flex;align-items:center}.order-container .order-list .order-item .order-body .device-info .device-right .payment-badge.wx-score .badge-text .divider.data-v-385ef1a6{margin:0 6rpx}.order-container .order-list .order-item .order-body .device-info .device-right .payment-badge.wx-score .badge-text .highlight.data-v-385ef1a6{font-weight:500}.order-container .order-list .order-item .order-body .device-info .device-right .payment-badge.deposit.data-v-385ef1a6{background:#f5f5f5}.order-container .order-list .order-item .order-body .device-info .device-right .payment-badge.deposit .badge-text.data-v-385ef1a6{font-size:22rpx;color:#666;font-weight:500}.order-container .order-list .order-item .order-body .order-times .time-row.data-v-385ef1a6{display:flex;font-size:26rpx;margin-bottom:8rpx}.order-container .order-list .order-item .order-body .order-times .time-row .time-label.data-v-385ef1a6{color:#999;width:140rpx}.order-container .order-list .order-item .order-body .order-times .time-row .time-value.data-v-385ef1a6{color:#333;flex:1}.order-container .order-list .order-item .order-footer.data-v-385ef1a6{display:flex;justify-content:space-between;align-items:center;padding:20rpx 24rpx;background:#fafafa;border-top:1rpx solid #f0f0f0}.order-container .order-list .order-item .order-footer .price.data-v-385ef1a6{font-size:34rpx;font-weight:500;color:#ff6b6b}.order-container .order-list .order-item .order-footer .actions.data-v-385ef1a6{display:flex;flex-wrap:wrap;justify-content:flex-end}.order-container .order-list .order-item .order-footer .actions .action-item.data-v-385ef1a6{font-size:26rpx;padding:10rpx 30rpx;border-radius:30rpx;margin-left:20rpx;display:flex;align-items:center;justify-content:center;margin-bottom:10rpx}.order-container .order-list .order-item .order-footer .actions .action-item.primary.data-v-385ef1a6{background:#1976d2;color:#fff}.order-container .order-list .order-item .order-footer .actions .action-item.secondary.data-v-385ef1a6{background:#f5f5f5;color:#666;border:1rpx solid #e0e0e0}.order-container .order-list .order-item .order-footer .actions .action-item.data-v-385ef1a6:active{opacity:.8}.order-container .order-list .empty-state.data-v-385ef1a6{padding:100rpx 0;text-align:center}.order-container .order-list .empty-state .empty-icon.data-v-385ef1a6{width:180rpx;height:180rpx;margin:0 auto 30rpx;background:#f5f5f5;border-radius:50%}.order-container .order-list .empty-state .empty-text.data-v-385ef1a6{font-size:28rpx;color:#999}
+.order-container.data-v-2998ff8e{min-height:100vh;background:#f7f8fa;padding-bottom:30rpx}.order-container .status-tabs.data-v-2998ff8e{display:flex;background:#fff;padding:0 20rpx;position:-webkit-sticky;position:sticky;top:0;z-index:10;box-shadow:0 2rpx 10rpx rgba(0,0,0,.05)}.order-container .status-tabs .tab-item.data-v-2998ff8e{flex:1;height:90rpx;display:flex;align-items:center;justify-content:center;font-size:28rpx;color:#666;position:relative}.order-container .status-tabs .tab-item.active.data-v-2998ff8e{color:#1976d2;font-weight:500}.order-container .status-tabs .tab-item.active.data-v-2998ff8e:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:40rpx;height:4rpx;background:#1976d2;border-radius:2rpx}.order-container .order-list.data-v-2998ff8e{padding:20rpx}.order-container .order-list .order-item.data-v-2998ff8e{background:#fff;border-radius:16rpx;margin-bottom:20rpx;overflow:hidden;box-shadow:0 2rpx 12rpx rgba(0,0,0,.04)}.order-container .order-list .order-item .order-header.data-v-2998ff8e{display:flex;justify-content:space-between;align-items:center;padding:24rpx;border-bottom:1rpx solid #f0f0f0}.order-container .order-list .order-item .order-header .order-id.data-v-2998ff8e{font-size:26rpx;color:#666}.order-container .order-list .order-item .order-header .order-status.data-v-2998ff8e{font-size:26rpx;font-weight:500}.order-container .order-list .order-item .order-header .order-status.status-waiting.data-v-2998ff8e{color:#ff9800}.order-container .order-list .order-item .order-header .order-status.status-using.data-v-2998ff8e{color:#2196f3}.order-container .order-list .order-item .order-header .order-status.status-finished.data-v-2998ff8e{color:#4caf50}.order-container .order-list .order-item .order-header .order-status.status-cancelled.data-v-2998ff8e{color:#9e9e9e}.order-container .order-list .order-item .order-body.data-v-2998ff8e{padding:24rpx}.order-container .order-list .order-item .order-body .device-info.data-v-2998ff8e{margin-bottom:20rpx;display:flex;justify-content:space-between;align-items:flex-start}.order-container .order-list .order-item .order-body .device-info .device-left.data-v-2998ff8e{flex:1;margin-right:20rpx}.order-container .order-list .order-item .order-body .device-info .device-left .device-name.data-v-2998ff8e{font-size:32rpx;font-weight:500;color:#333;margin-bottom:6rpx}.order-container .order-list .order-item .order-body .device-info .device-left .device-id.data-v-2998ff8e{font-size:26rpx;color:#999;margin-bottom:0}.order-container .order-list .order-item .order-body .device-info .device-right .payment-badge.data-v-2998ff8e{display:inline-flex;align-items:center;padding:6rpx 12rpx;border-radius:8rpx;white-space:nowrap}.order-container .order-list .order-item .order-body .device-info .device-right .payment-badge.wx-score.data-v-2998ff8e{background:rgba(7,193,96,.08)}.order-container .order-list .order-item .order-body .device-info .device-right .payment-badge.wx-score .badge-icon.data-v-2998ff8e{width:32rpx;height:26rpx;margin-right:8rpx}.order-container .order-list .order-item .order-body .device-info .device-right .payment-badge.wx-score .badge-text.data-v-2998ff8e{font-size:22rpx;color:#07c160;display:flex;align-items:center}.order-container .order-list .order-item .order-body .device-info .device-right .payment-badge.wx-score .badge-text .divider.data-v-2998ff8e{margin:0 6rpx}.order-container .order-list .order-item .order-body .device-info .device-right .payment-badge.wx-score .badge-text .highlight.data-v-2998ff8e{font-weight:500}.order-container .order-list .order-item .order-body .device-info .device-right .payment-badge.deposit.data-v-2998ff8e{background:#f5f5f5}.order-container .order-list .order-item .order-body .device-info .device-right .payment-badge.deposit .badge-text.data-v-2998ff8e{font-size:22rpx;color:#666;font-weight:500}.order-container .order-list .order-item .order-body .order-times .time-row.data-v-2998ff8e{display:flex;font-size:26rpx;margin-bottom:8rpx}.order-container .order-list .order-item .order-body .order-times .time-row .time-label.data-v-2998ff8e{color:#999;width:140rpx}.order-container .order-list .order-item .order-body .order-times .time-row .time-value.data-v-2998ff8e{color:#333;flex:1}.order-container .order-list .order-item .order-footer.data-v-2998ff8e{display:flex;justify-content:space-between;align-items:center;padding:20rpx 24rpx;background:#fafafa;border-top:1rpx solid #f0f0f0}.order-container .order-list .order-item .order-footer .price.data-v-2998ff8e{font-size:34rpx;font-weight:500;color:#ff6b6b}.order-container .order-list .order-item .order-footer .actions.data-v-2998ff8e{display:flex;flex-wrap:wrap;justify-content:flex-end}.order-container .order-list .order-item .order-footer .actions .action-item.data-v-2998ff8e{font-size:26rpx;padding:10rpx 30rpx;border-radius:30rpx;margin-left:20rpx;display:flex;align-items:center;justify-content:center;margin-bottom:10rpx}.order-container .order-list .order-item .order-footer .actions .action-item.primary.data-v-2998ff8e{background:#1976d2;color:#fff}.order-container .order-list .order-item .order-footer .actions .action-item.secondary.data-v-2998ff8e{background:#f5f5f5;color:#666;border:1rpx solid #e0e0e0}.order-container .order-list .order-item .order-footer .actions .action-item.data-v-2998ff8e:active{opacity:.8}.order-container .order-list .empty-state.data-v-2998ff8e{padding:100rpx 0;text-align:center}.order-container .order-list .empty-state .empty-icon.data-v-2998ff8e{width:180rpx;height:180rpx;margin:0 auto 30rpx;background:#f5f5f5;border-radius:50%}.order-container .order-list .empty-state .empty-text.data-v-2998ff8e{font-size:28rpx;color:#999}
diff --git a/unpackage/dist/build/mp-weixin/project.config.json b/unpackage/dist/build/mp-weixin/project.config.json
index 45cea2d..135a311 100644
--- a/unpackage/dist/build/mp-weixin/project.config.json
+++ b/unpackage/dist/build/mp-weixin/project.config.json
@@ -13,7 +13,7 @@
},
"compileType": "miniprogram",
"libVersion": "",
- "appid": "wxe752f45e7f7aa271",
+ "appid": "wx2165f0be356ae7a9",
"projectname": "uni-fans-score",
"condition": {
"search": {
diff --git a/unpackage/dist/build/mp-weixin/util/index.js b/unpackage/dist/build/mp-weixin/util/index.js
index 318eea5..b8e519d 100644
--- a/unpackage/dist/build/mp-weixin/util/index.js
+++ b/unpackage/dist/build/mp-weixin/util/index.js
@@ -1 +1 @@
-"use strict";const e=require("../common/vendor.js"),o=require("../config/user.js");exports.getQueryString=function(e,o){var n=new RegExp("(^|&|/?)"+o+"=([^&|/?]*)(&|/?|$)","i"),s=e.substr(1).match(n);return null!=s?s[2]:null},exports.getUserInfo=()=>new Promise((async(e,n)=>{e(await o.getMyIndexInfo({isHide:!1}))})),exports.initiateWeChatScorePayment=o=>new Promise(((n,s)=>{o&&o.data&&o.data.package?e.wx$1.openBusinessView({businessType:"wxpayScoreUse",extraData:{mch_id:o.data.mch_id,package:o.data.package},success:e=>{console.log("微信支付分小程序调用成功",e),"openBusinessView:ok"===e.errMsg?n(e):s(new Error("支付流程未完成"))},fail:o=>{console.error("微信支付分小程序调用失败",o),e.index.showToast({title:o.errMsg||"支付分接口调用失败",icon:"none"}),s(o)}}):s(new Error("支付参数不完整"))})),exports.wxLogin=()=>new Promise(((n,s)=>{e.index.login({provider:"weixin",success:async i=>{try{if(!i.code)throw new Error("获取微信登录凭证失败");{const s=await o.login({code:i.code,appid:"wxe752f45e7f7aa271"});if(200!==s.code)throw new Error(s.message||"登录失败");e.index.setStorageSync("token",s.data.LoginWxVo.access_token),e.index.setStorageSync("client_id",s.data.LoginWxVo.client_id),n(s.data)}}catch(t){e.index.showToast({title:t.message||"登录失败",icon:"none"}),s(t)}},fail:o=>{e.index.showToast({title:"微信登录失败",icon:"none"}),s(o)}})}));
+"use strict";const e=require("../common/vendor.js"),n=require("../config/user.js");exports.getQueryString=function(e,n){var o=new RegExp("(^|&|/?)"+n+"=([^&|/?]*)(&|/?|$)","i"),i=e.substr(1).match(o);return null!=i?i[2]:null},exports.getUserInfo=()=>new Promise((async(e,o)=>{e(await n.getMyIndexInfo({isHide:!1}))})),exports.initiateWeChatScorePayment=n=>new Promise(((o,i)=>{n&&n.data&&n.data.package?e.wx$1.openBusinessView({businessType:"wxpayScoreUse",extraData:{mch_id:n.data.mch_id,package:n.data.package},success:e=>{"openBusinessView:ok"===e.errMsg?o(e):i(new Error("支付流程未完成"))},fail:n=>{console.error("微信支付分小程序调用失败",n),e.index.showToast({title:n.errMsg||"支付分接口调用失败",icon:"none"}),i(n)}}):i(new Error("支付参数不完整"))})),exports.wxLogin=()=>new Promise(((o,i)=>{e.index.login({provider:"weixin",success:async s=>{try{if(!s.code)throw new Error("获取微信登录凭证失败");{const i=await n.login({code:s.code,appid:"wx2165f0be356ae7a9"});if(200!==i.code)throw new Error(i.message||"登录失败");e.index.setStorageSync("token",i.data.LoginWxVo.access_token),e.index.setStorageSync("client_id",i.data.LoginWxVo.client_id),o(i.data)}}catch(t){e.index.showToast({title:t.message||"登录失败",icon:"none"}),i(t)}},fail:n=>{e.index.showToast({title:"微信登录失败",icon:"none"}),i(n)}})}));
diff --git a/unpackage/dist/build/mp-weixin/utils/orderMonitor.js b/unpackage/dist/build/mp-weixin/utils/orderMonitor.js
index 30f2b20..65af269 100644
--- a/unpackage/dist/build/mp-weixin/utils/orderMonitor.js
+++ b/unpackage/dist/build/mp-weixin/utils/orderMonitor.js
@@ -1 +1 @@
-"use strict";const e=require("../common/vendor.js"),r=require("../config/user.js");const t=new class{constructor(){this.activeOrders=new Map,this.timer=null,this.checkInterval=1e4,this.isRunning=!1,this.currentPage=null}addOrder(e,r="return"){e&&e.orderId?(console.log(`添加订单到监控队列: ${e.orderId}, 页面: ${r}`),this.activeOrders.set(e.orderId,{...e,pageName:r}),this.isRunning||this.start()):console.error("添加订单监控失败:无效的订单数据")}removeOrder(e){if(e){if(e.orderId&&this.activeOrders.has(e.orderId))console.log("从监控队列移除订单:",e.orderId),this.activeOrders.delete(e.orderId);else if(e.pageName){console.log("从监控队列移除页面相关订单:",e.pageName);for(const[r,t]of this.activeOrders.entries())t.pageName===e.pageName&&this.activeOrders.delete(r)}0===this.activeOrders.size&&this.stop()}}setActivePage(e){this.currentPage=e,console.log("设置当前活跃页面:",e)}start(){this.isRunning||(console.log("启动订单监控服务"),this.isRunning=!0,this.checkOrders(),this.timer=setInterval((()=>{this.checkOrders()}),this.checkInterval))}stop(){this.isRunning&&(console.log("停止订单监控服务"),this.isRunning=!1,this.timer&&(clearInterval(this.timer),this.timer=null))}async checkOrders(){if(0!==this.activeOrders.size){console.log(`检查 ${this.activeOrders.size} 个活跃订单状态, 当前页面: ${this.currentPage}`);for(const[r,t]of this.activeOrders.entries())try{t.pageName&&"return"!==t.pageName||("return"===this.currentPage||null===this.currentPage?await this.checkOrderStatus(r):console.log(`跳过订单状态检查: ${r}, 当前不在归还页面`))}catch(e){console.error(`检查订单状态失败: ${r}`,e)}}}async checkOrderStatus(t){try{console.log(`检查订单 ${t} 的状态`);const s=await r.queryById(t);if(200===s.code&&s.data){const r=s.data,i=this.activeOrders.get(t),o=i?i.pageName:null;if(this.activeOrders.set(t,{...r,pageName:o}),"used_done"===r.orderStatus||"used_down"===r.orderStatus){console.log(`订单 ${t} 已完成!`),e.index.$emit("orderCompleted",r),e.index.showToast({title:"风扇归还成功",icon:"success",duration:2e3});const s=e.index.createInnerAudioContext();s.src="/static/audio/return_success.mp3",s.play(),this.removeOrder({orderId:t}),setTimeout((()=>{e.index.showModal({title:"归还成功",content:"风扇已归还成功,剩余押金将退还到您的账户",confirmText:"查看详情",success:r=>{r.confirm&&e.index.redirectTo({url:`/pages/order/return-success?orderId=${t}`})}})}),500)}}}catch(s){console.error(`检查订单 ${t} 状态出错:`,s)}}};e.index.onAppRoute((e=>{const r=e.path||"",s=r.split("/"),i=s[s.length-1];t.setActivePage(i||null),console.log("页面切换:",r,"当前活跃页面:",i)}));(()=>{const r=e.index.getStorageSync("activeOrderId");if(r){const e={orderId:r};t.addOrder(e,"return")}})(),exports.orderMonitor=t;
+"use strict";const e=require("../common/vendor.js"),r=require("../config/user.js");const t=new class{constructor(){this.activeOrders=new Map,this.timer=null,this.checkInterval=1e4,this.isRunning=!1,this.currentPage=null}addOrder(e,r="return"){e&&e.orderId?(console.log(`添加订单到监控队列: ${e.orderId}, 页面: ${r}`),this.activeOrders.set(e.orderId,{...e,pageName:r}),this.isRunning||this.start()):console.error("添加订单监控失败:无效的订单数据")}removeOrder(e){if(e){if(e.orderId&&this.activeOrders.has(e.orderId))console.log("从监控队列移除订单:",e.orderId),this.activeOrders.delete(e.orderId);else if(e.pageName){console.log("从监控队列移除页面相关订单:",e.pageName);for(const[r,t]of this.activeOrders.entries())t.pageName===e.pageName&&this.activeOrders.delete(r)}0===this.activeOrders.size&&this.stop()}}setActivePage(e){this.currentPage=e,console.log("设置当前活跃页面:",e)}start(){this.isRunning||(console.log("启动订单监控服务"),this.isRunning=!0,this.checkOrders(),this.timer=setInterval((()=>{this.checkOrders()}),this.checkInterval))}stop(){this.isRunning&&(console.log("停止订单监控服务"),this.isRunning=!1,this.timer&&(clearInterval(this.timer),this.timer=null))}async checkOrders(){if(0!==this.activeOrders.size){console.log(`检查 ${this.activeOrders.size} 个活跃订单状态, 当前页面: ${this.currentPage}`);for(const[r,t]of this.activeOrders.entries())try{t.pageName&&"return"!==t.pageName||"return"!==this.currentPage&&null!==this.currentPage||await this.checkOrderStatus(r)}catch(e){}}}async checkOrderStatus(t){try{console.log(`检查订单 ${t} 的状态`);const s=await r.queryById(t);if(200===s.code&&s.data){const r=s.data,i=this.activeOrders.get(t),o=i?i.pageName:null;if(this.activeOrders.set(t,{...r,pageName:o}),"used_done"===r.orderStatus||"used_down"===r.orderStatus){console.log(`订单 ${t} 已完成!`),e.index.$emit("orderCompleted",r),e.index.showToast({title:"风扇归还成功",icon:"success",duration:2e3});const s=e.index.createInnerAudioContext();s.src="/static/audio/return_success.mp3",s.play(),this.removeOrder({orderId:t}),setTimeout((()=>{e.index.showModal({title:"归还成功",content:"风扇已归还成功,剩余押金将退还到您的账户",confirmText:"查看详情",success:r=>{r.confirm&&e.index.redirectTo({url:`/pages/order/return-success?orderId=${t}`})}})}),500)}}}catch(s){console.error(`检查订单 ${t} 状态出错:`,s)}}};e.index.onAppRoute((e=>{const r=e.path||"",s=r.split("/"),i=s[s.length-1];t.setActivePage(i||null),console.log("页面切换:",r,"当前活跃页面:",i)}));(()=>{const r=e.index.getStorageSync("activeOrderId");if(r){const e={orderId:r};t.addOrder(e,"return")}})(),exports.orderMonitor=t;
diff --git a/unpackage/dist/dev/.sourcemap/mp-weixin/app.js.map b/unpackage/dist/dev/.sourcemap/mp-weixin/app.js.map
index b740713..a086c1c 100644
--- a/unpackage/dist/dev/.sourcemap/mp-weixin/app.js.map
+++ b/unpackage/dist/dev/.sourcemap/mp-weixin/app.js.map
@@ -1 +1 @@
-{"version":3,"file":"app.js","sources":["App.vue","main.js"],"sourcesContent":["\r\n\r\n","import App from './App'\r\nimport { orderMonitor } from './utils/orderMonitor.js'\r\n\r\nimport uView from \"uview-ui\";\r\n\r\n\r\n// #ifndef VUE3\r\nimport Vue from 'vue'\r\nimport './uni.promisify.adaptor'\r\nVue.config.productionTip = false\r\n\r\n// 注册全局订单监控服务\r\nVue.prototype.$orderMonitor = orderMonitor\r\n\r\nApp.mpType = 'app'\r\nVue.use(uView)\r\nconst app = new Vue({\r\n ...App\r\n})\r\napp.$mount()\r\n// #endif\r\n\r\n// #ifdef VUE3\r\nimport { createSSRApp } from 'vue'\r\nexport function createApp() {\r\n const app = createSSRApp(App)\r\n \r\n // 注册全局订单监控服务到VUE3\r\n app.config.globalProperties.$orderMonitor = orderMonitor\r\n \r\n return {\r\n app\r\n }\r\n}\r\n// #endif"],"names":["uni","wxLogin","createSSRApp","App","orderMonitor"],"mappings":";;;;;;;;;;;;;;;;;;;;AAOC,MAAK,YAAU;AAAA,EACd,UAAU,WAAW;AACpBA,kBAAAA,MAAA,MAAA,OAAA,iBAAY,YAAY;AAAA,EAExB;AAAA,EACD,QAAQ,iBAAiB;AACxBA,kBAAAA,MAAY,MAAA,OAAA,iBAAA,UAAU;AACtB,UAAM,KAAK,UAAU;AAAA,EAErB;AAAA,EACD,QAAQ,WAAW;AAClBA,kBAAAA,MAAY,MAAA,OAAA,iBAAA,UAAU;AAAA,EACtB;AAAA,EAID,SAAS;AAAA,IACR,MAAM,YAAY;AACjB,UAAI;AACH,cAAM,cAAc,MAAMC,mBAAQ;AAClCD,sBAAAA,MAAY,MAAA,OAAA,iBAAA,WAAW,WAAW;AAAA,MAEjC,SAAO,OAAO;AACfA,sBAAAA,sCAAc,WAAW,KAAK;AAAA,MAG/B;AAAA,IACD;AAAA,EACD;AACD;ACZM,SAAS,YAAY;AAC1B,QAAM,MAAME,cAAY,aAACC,SAAG;AAG5B,MAAI,OAAO,iBAAiB,gBAAgBC,mBAAY;AAExD,SAAO;AAAA,IACL;AAAA,EACD;AACH;;;"}
\ No newline at end of file
+{"version":3,"file":"app.js","sources":["App.vue","main.js"],"sourcesContent":["\r\n\r\n","import App from './App'\r\nimport { orderMonitor } from './utils/orderMonitor.js'\r\n\r\nimport uView from \"uview-ui\";\r\n\r\n\r\n// #ifndef VUE3\r\nimport Vue from 'vue'\r\nimport './uni.promisify.adaptor'\r\nVue.config.productionTip = false\r\n\r\n// 注册全局订单监控服务\r\nVue.prototype.$orderMonitor = orderMonitor\r\n\r\nApp.mpType = 'app'\r\nVue.use(uView)\r\nconst app = new Vue({\r\n ...App\r\n})\r\napp.$mount()\r\n// #endif\r\n\r\n// #ifdef VUE3\r\nimport { createSSRApp } from 'vue'\r\nexport function createApp() {\r\n const app = createSSRApp(App)\r\n \r\n // 注册全局订单监控服务到VUE3\r\n app.config.globalProperties.$orderMonitor = orderMonitor\r\n \r\n return {\r\n app\r\n }\r\n}\r\n// #endif"],"names":["uni","wxLogin","createSSRApp","App","orderMonitor"],"mappings":";;;;;;;;;;;;;;;;;;;;AAOC,MAAK,YAAU;AAAA,EACd,UAAU,WAAW;AACpBA,kBAAAA,MAAA,MAAA,OAAA,iBAAY,YAAY;AAAA,EAExB;AAAA,EACD,QAAQ,iBAAiB;AACxBA,kBAAAA,MAAY,MAAA,OAAA,iBAAA,UAAU;AACtB,UAAM,KAAK,UAAU;AAAA,EAErB;AAAA,EACD,QAAQ,WAAW;AAClBA,kBAAAA,MAAY,MAAA,OAAA,iBAAA,UAAU;AAAA,EACtB;AAAA,EAID,SAAS;AAAA,IACR,MAAM,YAAY;AACjB,UAAI;AACH,cAAM,cAAc,MAAMC,mBAAQ;AAAA,MAEjC,SAAO,OAAO;AACfD,sBAAAA,sCAAc,WAAW,KAAK;AAAA,MAG/B;AAAA,IACD;AAAA,EACD;AACD;ACXM,SAAS,YAAY;AAC1B,QAAM,MAAME,cAAY,aAACC,SAAG;AAG5B,MAAI,OAAO,iBAAiB,gBAAgBC,mBAAY;AAExD,SAAO;AAAA,IACL;AAAA,EACD;AACH;;;"}
\ No newline at end of file
diff --git a/unpackage/dist/dev/.sourcemap/mp-weixin/config/http.js.map b/unpackage/dist/dev/.sourcemap/mp-weixin/config/http.js.map
index 030ebf2..17b7693 100644
--- a/unpackage/dist/dev/.sourcemap/mp-weixin/config/http.js.map
+++ b/unpackage/dist/dev/.sourcemap/mp-weixin/config/http.js.map
@@ -1 +1 @@
-{"version":3,"file":"http.js","sources":["config/http.js"],"sourcesContent":["import {\r\n\tURL,\r\n\tappid\r\n} from './url'\r\n\r\nconst request = (option) => {\r\n\treturn new Promise((resolve, reject) => {\r\n\t\t// Debug request info\r\n\t\tconsole.log(`发起请求: ${option.method} ${URL + option.url}`, option.data)\r\n\t\t\r\n\t\t// 默认不显示加载中提示\r\n\t\tif (!option.hideLoading) {\r\n\t\t\tuni.showLoading({\r\n\t\t\t\ttitle: option.loadingText || '加载中...',\r\n\t\t\t\tmask: true\r\n\t\t\t})\r\n\t\t}\r\n\t\t\r\n\t\tuni.request({\r\n\t\t\turl: URL + option.url,\r\n\t\t\tmethod: option.method,\r\n\t\t\tdata: option.data,\r\n\t\t\theader: {\r\n\t\t\t\t\"Content-Type\": \"application/x-www-form-urlencoded\",\r\n\t\t\t\t\t...option.headers,\r\n\t\t\t\t'appid': appid,\r\n\t\t\t\t'Authorization': \"Bearer \" + uni.getStorageSync('token'),\r\n\t\t\t\t'Clientid': uni.getStorageSync('client_id')\r\n\t\t\t},\r\n\t\t\tsuccess(res) {\r\n\t\t\t\t// 记录响应\r\n\t\t\t\tconsole.log(`请求响应: ${option.url}`, res)\r\n\t\t\t\t\r\n\t\t\t\t// 检查响应状态码\r\n\t\t\t\tif (res.statusCode !== 200) {\r\n\t\t\t\t\tconsole.error(`HTTP状态码错误: ${res.statusCode}`, res.data)\r\n\t\t\t\t\t\r\n\t\t\t\t\t// 为了适应某些服务器的异常响应,我们仍然返回数据\r\n\t\t\t\t\tif (res.data) {\r\n\t\t\t\t\t\tresolve(res.data)\r\n\t\t\t\t\t\treturn\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\t\t\treject({msg: `请求失败,状态码:${res.statusCode}`})\r\n\t\t\t\t\treturn\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\t// 检查业务状态码\r\n\t\t\t\tif (res.data && res.data.code !== 200) {\r\n\t\t\t\t\tconsole.warn(`业务状态码错误: ${res.data.code}`, res.data)\r\n\t\t\t\t\t\r\n\t\t\t\t\t// 判断是否需要忽略数据为空的错误\r\n\t\t\t\t\tif (option.ignoreEmptyError && \r\n\t\t\t\t\t\t(res.data.code === 500 && res.data.msg && \r\n\t\t\t\t\t\t(res.data.msg.includes('未找到') || res.data.msg.includes('不存在')))) {\r\n\t\t\t\t\t\t// 对于指定需要忽略的错误,返回一个标准的\"成功但数据为空\"的响应\r\n\t\t\t\t\t\tresolve({\r\n\t\t\t\t\t\t\tcode: 200,\r\n\t\t\t\t\t\t\tmsg: \"操作成功\",\r\n\t\t\t\t\t\t\tdata: []\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\treturn\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\t\t\t// 仍然返回数据,由业务逻辑处理\r\n\t\t\t\t\tresolve(res.data)\r\n\t\t\t\t\treturn\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\tresolve(res.data)\r\n\t\t\t},\r\n\t\t\tfail(err) {\r\n\t\t\t\t// 网络请求本身失败\r\n\t\t\t\tconsole.error(`请求失败: ${option.url}`, err)\r\n\t\t\t\treject(err)\r\n\t\t\t},\r\n\t\t\tcomplete() {\r\n\t\t\t\t// 隐藏加载提示\r\n\t\t\t\tif (!option.hideLoading) {\r\n\t\t\t\t\tuni.hideLoading()\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t})\r\n\t})\r\n}\r\n\r\n\r\nexport default request"],"names":["uni","URL","appid"],"mappings":";;;AAKK,MAAC,UAAU,CAAC,WAAW;AAC3B,SAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AAEvCA,kBAAA,MAAA,MAAA,OAAA,uBAAY,SAAS,OAAO,MAAM,IAAIC,WAAAA,MAAM,OAAO,GAAG,IAAI,OAAO,IAAI;AAGrE,QAAI,CAAC,OAAO,aAAa;AACxBD,oBAAAA,MAAI,YAAY;AAAA,QACf,OAAO,OAAO,eAAe;AAAA,QAC7B,MAAM;AAAA,MACV,CAAI;AAAA,IACD;AAEDA,kBAAAA,MAAI,QAAQ;AAAA,MACX,KAAKC,WAAAA,MAAM,OAAO;AAAA,MAClB,QAAQ,OAAO;AAAA,MACf,MAAM,OAAO;AAAA,MACb,QAAQ;AAAA,QACP,gBAAgB;AAAA,QACf,GAAG,OAAO;AAAA,QACX,SAASC,WAAK;AAAA,QACd,iBAAiB,YAAYF,oBAAI,eAAe,OAAO;AAAA,QACvD,YAAYA,cAAAA,MAAI,eAAe,WAAW;AAAA,MAC1C;AAAA,MACD,QAAQ,KAAK;AAEZA,4BAAA,MAAA,OAAA,wBAAY,SAAS,OAAO,GAAG,IAAI,GAAG;AAGtC,YAAI,IAAI,eAAe,KAAK;AAC3BA,wBAAAA,6CAAc,cAAc,IAAI,UAAU,IAAI,IAAI,IAAI;AAGtD,cAAI,IAAI,MAAM;AACb,oBAAQ,IAAI,IAAI;AAChB;AAAA,UACA;AAED,iBAAO,EAAC,KAAK,YAAY,IAAI,UAAU,GAAE,CAAC;AAC1C;AAAA,QACA;AAGD,YAAI,IAAI,QAAQ,IAAI,KAAK,SAAS,KAAK;AACtCA,wBAAAA,MAAa,MAAA,QAAA,wBAAA,YAAY,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI;AAGlD,cAAI,OAAO,qBACT,IAAI,KAAK,SAAS,OAAO,IAAI,KAAK,QAClC,IAAI,KAAK,IAAI,SAAS,KAAK,KAAK,IAAI,KAAK,IAAI,SAAS,KAAK,KAAK;AAEjE,oBAAQ;AAAA,cACP,MAAM;AAAA,cACN,KAAK;AAAA,cACL,MAAM,CAAE;AAAA,YACf,CAAO;AACD;AAAA,UACA;AAGD,kBAAQ,IAAI,IAAI;AAChB;AAAA,QACA;AAED,gBAAQ,IAAI,IAAI;AAAA,MAChB;AAAA,MACD,KAAK,KAAK;AAETA,4BAAA,MAAA,SAAA,wBAAc,SAAS,OAAO,GAAG,IAAI,GAAG;AACxC,eAAO,GAAG;AAAA,MACV;AAAA,MACD,WAAW;AAEV,YAAI,CAAC,OAAO,aAAa;AACxBA,wBAAAA,MAAI,YAAa;AAAA,QACjB;AAAA,MACD;AAAA,IACJ,CAAG;AAAA,EACH,CAAE;AACF;;"}
\ No newline at end of file
+{"version":3,"file":"http.js","sources":["config/http.js"],"sourcesContent":["import {\r\n\tURL,\r\n\tappid\r\n} from './url'\r\n\r\nconst request = (option) => {\r\n\treturn new Promise((resolve, reject) => {\r\n\r\n\t\t// 默认不显示加载中提示\r\n\t\tif (!option.hideLoading) {\r\n\t\t\tuni.showLoading({\r\n\t\t\t\ttitle: option.loadingText || '加载中...',\r\n\t\t\t\tmask: true\r\n\t\t\t})\r\n\t\t}\r\n\t\t\r\n\t\tuni.request({\r\n\t\t\turl: URL + option.url,\r\n\t\t\tmethod: option.method,\r\n\t\t\tdata: option.data,\r\n\t\t\theader: {\r\n\t\t\t\t\"Content-Type\": \"application/x-www-form-urlencoded\",\r\n\t\t\t\t\t...option.headers,\r\n\t\t\t\t'appid': appid,\r\n\t\t\t\t'Authorization': \"Bearer \" + uni.getStorageSync('token'),\r\n\t\t\t\t'Clientid': uni.getStorageSync('client_id')\r\n\t\t\t},\r\n\t\t\tsuccess(res) {\r\n\r\n\t\t\t\t\r\n\t\t\t\t// 检查响应状态码\r\n\t\t\t\tif (res.statusCode !== 200) {\r\n\t\t\t\t\tconsole.error(`HTTP状态码错误: ${res.statusCode}`, res.data)\r\n\t\t\t\t\t\r\n\t\t\t\t\t// 为了适应某些服务器的异常响应,我们仍然返回数据\r\n\t\t\t\t\tif (res.data) {\r\n\t\t\t\t\t\tresolve(res.data)\r\n\t\t\t\t\t\treturn\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\t\t\treject({msg: `请求失败,状态码:${res.statusCode}`})\r\n\t\t\t\t\treturn\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\t// 检查业务状态码\r\n\t\t\t\tif (res.data && res.data.code !== 200) {\r\n\t\t\t\t\tconsole.warn(`业务状态码错误: ${res.data.code}`, res.data)\r\n\t\t\t\t\t\r\n\t\t\t\t\t// 判断是否需要忽略数据为空的错误\r\n\t\t\t\t\tif (option.ignoreEmptyError && \r\n\t\t\t\t\t\t(res.data.code === 500 && res.data.msg && \r\n\t\t\t\t\t\t(res.data.msg.includes('未找到') || res.data.msg.includes('不存在')))) {\r\n\t\t\t\t\t\t// 对于指定需要忽略的错误,返回一个标准的\"成功但数据为空\"的响应\r\n\t\t\t\t\t\tresolve({\r\n\t\t\t\t\t\t\tcode: 200,\r\n\t\t\t\t\t\t\tmsg: \"操作成功\",\r\n\t\t\t\t\t\t\tdata: []\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t\treturn\r\n\t\t\t\t\t}\r\n\t\t\t\t\t\r\n\t\t\t\t\t// 仍然返回数据,由业务逻辑处理\r\n\t\t\t\t\tresolve(res.data)\r\n\t\t\t\t\treturn\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\tresolve(res.data)\r\n\t\t\t},\r\n\t\t\tfail(err) {\r\n\t\t\t\t// 网络请求本身失败\r\n\t\t\t\tconsole.error(`请求失败: ${option.url}`, err)\r\n\t\t\t\treject(err)\r\n\t\t\t},\r\n\t\t\tcomplete() {\r\n\t\t\t\t// 隐藏加载提示\r\n\t\t\t\tif (!option.hideLoading) {\r\n\t\t\t\t\tuni.hideLoading()\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t})\r\n\t})\r\n}\r\n\r\n\r\nexport default request"],"names":["uni","URL","appid"],"mappings":";;;AAKK,MAAC,UAAU,CAAC,WAAW;AAC3B,SAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AAGvC,QAAI,CAAC,OAAO,aAAa;AACxBA,oBAAAA,MAAI,YAAY;AAAA,QACf,OAAO,OAAO,eAAe;AAAA,QAC7B,MAAM;AAAA,MACV,CAAI;AAAA,IACD;AAEDA,kBAAAA,MAAI,QAAQ;AAAA,MACX,KAAKC,WAAAA,MAAM,OAAO;AAAA,MAClB,QAAQ,OAAO;AAAA,MACf,MAAM,OAAO;AAAA,MACb,QAAQ;AAAA,QACP,gBAAgB;AAAA,QACf,GAAG,OAAO;AAAA,QACX,SAASC,WAAK;AAAA,QACd,iBAAiB,YAAYF,oBAAI,eAAe,OAAO;AAAA,QACvD,YAAYA,cAAAA,MAAI,eAAe,WAAW;AAAA,MAC1C;AAAA,MACD,QAAQ,KAAK;AAIZ,YAAI,IAAI,eAAe,KAAK;AAC3BA,wBAAAA,6CAAc,cAAc,IAAI,UAAU,IAAI,IAAI,IAAI;AAGtD,cAAI,IAAI,MAAM;AACb,oBAAQ,IAAI,IAAI;AAChB;AAAA,UACA;AAED,iBAAO,EAAC,KAAK,YAAY,IAAI,UAAU,GAAE,CAAC;AAC1C;AAAA,QACA;AAGD,YAAI,IAAI,QAAQ,IAAI,KAAK,SAAS,KAAK;AACtCA,wBAAAA,MAAa,MAAA,QAAA,wBAAA,YAAY,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI;AAGlD,cAAI,OAAO,qBACT,IAAI,KAAK,SAAS,OAAO,IAAI,KAAK,QAClC,IAAI,KAAK,IAAI,SAAS,KAAK,KAAK,IAAI,KAAK,IAAI,SAAS,KAAK,KAAK;AAEjE,oBAAQ;AAAA,cACP,MAAM;AAAA,cACN,KAAK;AAAA,cACL,MAAM,CAAE;AAAA,YACf,CAAO;AACD;AAAA,UACA;AAGD,kBAAQ,IAAI,IAAI;AAChB;AAAA,QACA;AAED,gBAAQ,IAAI,IAAI;AAAA,MAChB;AAAA,MACD,KAAK,KAAK;AAETA,4BAAA,MAAA,SAAA,wBAAc,SAAS,OAAO,GAAG,IAAI,GAAG;AACxC,eAAO,GAAG;AAAA,MACV;AAAA,MACD,WAAW;AAEV,YAAI,CAAC,OAAO,aAAa;AACxBA,wBAAAA,MAAI,YAAa;AAAA,QACjB;AAAA,MACD;AAAA,IACJ,CAAG;AAAA,EACH,CAAE;AACF;;"}
\ No newline at end of file
diff --git a/unpackage/dist/dev/.sourcemap/mp-weixin/config/url.js.map b/unpackage/dist/dev/.sourcemap/mp-weixin/config/url.js.map
index d7f5d54..33172a2 100644
--- a/unpackage/dist/dev/.sourcemap/mp-weixin/config/url.js.map
+++ b/unpackage/dist/dev/.sourcemap/mp-weixin/config/url.js.map
@@ -1 +1 @@
-{"version":3,"file":"url.js","sources":["config/url.js"],"sourcesContent":["// export const URL = \"https://my.gxfs123.com/api\" //正式服务器\r\nexport const URL = \"https://unifans.gxfs123.com/api\" //测试服务器\r\n// export const URL = \"http://192.168.10.60:8080\" \t\t//本地调试\r\n\r\nexport const appid = \"wxe752f45e7f7aa271\" //小程序appid"],"names":[],"mappings":";AACY,MAAC,MAAM;AAGP,MAAC,QAAQ;;;"}
\ No newline at end of file
+{"version":3,"file":"url.js","sources":["config/url.js"],"sourcesContent":["// export const URL = \"https://my.gxfs123.com/api\" //正式服务器\r\nexport const URL = \"https://unifans.gxfs123.com/api\" //测试服务器\r\n// export const URL = \"http://192.168.10.60:8080\" \t\t//本地调试\r\n\r\nexport const appid = \"wx2165f0be356ae7a9\" //小程序appid"],"names":[],"mappings":";AACY,MAAC,MAAM;AAGP,MAAC,QAAQ;;;"}
\ No newline at end of file
diff --git a/unpackage/dist/dev/.sourcemap/mp-weixin/config/user.js.map b/unpackage/dist/dev/.sourcemap/mp-weixin/config/user.js.map
index fa7a55b..5f88911 100644
--- a/unpackage/dist/dev/.sourcemap/mp-weixin/config/user.js.map
+++ b/unpackage/dist/dev/.sourcemap/mp-weixin/config/user.js.map
@@ -1 +1 @@
-{"version":3,"file":"user.js","sources":["config/user.js"],"sourcesContent":["import request from './http'\r\n\r\n\r\nexport const login = (data) => {\r\n return request({\r\n url: '/app/user/login',\r\n method: 'get',\r\n data\r\n })\r\n}\r\n\r\n\r\nexport const getMyIndexInfo = (data) => {\r\n return request({\r\n url: '/app/user/userInfo',\r\n method: 'get',\r\n data,\r\n })\r\n}\r\n\r\n// 添加押金提现API\r\nexport const withdrawDeposit = (orderNo) => {\r\n console.log('调用提现API,订单号:', orderNo)\r\n return request({\r\n url: `/app/withdraw/add/${orderNo}`,\r\n method: 'get',\r\n hideLoading: true\r\n })\r\n}\r\n\r\n//获取所有全部订单\r\nexport const getOrderList = (data) => {\r\n return request({\r\n url: '/app/order/list',\r\n method: 'get',\r\n data,\r\n hideLoading:true\r\n })\r\n}\r\n\r\n//查询是否有订单\r\nexport const queryHasOrder = (deviceNo) => {\r\n return request({\r\n url: `/app/order/list?deviceNo=${deviceNo}&orderStatus=in_used`,\r\n method: 'get',\r\n })\r\n}\r\n\r\n// 查询指定设备号下,特定状态的订单列表\r\nexport const checkOrdersByStatus = (deviceNo, statuses) => {\r\n // statuses 是一个包含状态字符串的数组,例如 ['in_used', 'waiting_for_payment']\r\n const statusQuery = statuses.join(','); // 后端需要支持逗号分隔的状态查询\r\n return request({\r\n url: `/app/order/list?deviceNo=${deviceNo}&orderStatus=${statusQuery}`,\r\n method: 'get',\r\n hideLoading: true, // 隐藏加载提示,避免干扰用户\r\n ignoreEmptyError: true // 添加标记,表示即使返回空数据也不视为错误\r\n })\r\n}\r\n\r\n//设备查询\r\nexport const getDeviceInfo = (deviceNo) => {\r\n return request({\r\n url: `/app/device/${deviceNo}`,\r\n method: 'get',\r\n })\r\n}\r\n\r\n\r\n//创建订单\r\nexport const createOrder = (data) => {\r\n return request({\r\n url: '/app/order/add',\r\n method: 'post',\r\n data,\r\n })\r\n}\r\n\r\n//查询订单\r\nexport const queryById = (id) => {\r\n console.log(`查询订单详情, orderId: ${id}`)\r\n return request({\r\n url: `/app/order/${id}`,\r\n method: 'get',\r\n hideLoading: true\r\n })\r\n}\r\n\r\n\r\n//取消订单\r\nexport const cancelOrder = (data) => {\r\n return request({\r\n url: '/orderInfo/cancelOrder',\r\n method: 'get',\r\n data,\r\n })\r\n}\r\n\r\n\r\n//结束订单\r\nexport const overOrderById = (orderId) => {\r\n console.log(`调用结束订单API, orderId: ${orderId}`)\r\n return request({\r\n url: `/app/order/close/${orderId}`,\r\n method: 'get',\r\n })\r\n}\r\n\r\n//立即租借\r\nexport const rentPowerBank = (deviceNo, phone) => {\r\n return request({\r\n url: '/app/device/rentPowerBank',\r\n method: 'post',\r\n data: { deviceNo, phone }\r\n })\r\n}\r\n\r\n//确认支付并弹出风扇\r\nexport const confirmPaymentAndRent = (orderId) => {\r\n console.log(`确认支付并弹出风扇, orderId: ${orderId}`)\r\n return request({\r\n url: `/app/device/confirmPaymentAndRent?orderId=${orderId}`,\r\n method: 'post'\r\n })\r\n}\r\n\r\n\r\n\r\n//投诉反馈\r\nexport const addUserFeedback = (data) => {\r\n return request({\r\n url: '/app/feedback/add',\r\n method: 'post',\r\n data,\r\n })\r\n}\r\n\r\n//强制打开空格子\r\nexport const forcefOpenEmptyGrid = (deviceNo) => {\r\n console.log(`强制打开空格子, deviceNo: ${deviceNo}`)\r\n return request({\r\n url: `/app/device/forcef/${deviceNo}`,\r\n method: 'post'\r\n })\r\n}\r\n\r\n// 通过订单号获取订单信息\r\nexport const getOrderByOrderNo = (orderNo) => {\r\n return request({\r\n url: `/app/order/byOrderNo/${orderNo}`,\r\n method: 'get',\r\n hideLoading: true\r\n })\r\n}\r\n// 通过订单号获取支付分订单信息\r\nexport const getOrderByOrderNoScore = (orderNo) => {\r\n\tconsole.log('通过订单号获取支付分订单信息',orderNo);\r\n return request({\r\n url: `/app/wx-payment/score/create/${orderNo}`,\r\n method: 'get',\r\n hideLoading: true\r\n })\r\n}\r\n\r\nexport const getOrderByOrderNoScorePayStatus = (orderNo) => {\r\n\tconsole.log('通过订单号获取支付分订单状态',orderNo);\r\n return request({\r\n url: `/app/wx-payment/score/status/${orderNo}`,\r\n method: 'get',\r\n hideLoading: true\r\n })\r\n}\r\n\r\n// 更新订单套餐信息\r\nexport const updateOrderPackage = (data) => {\r\n console.log('更新订单套餐信息:', data)\r\n return request({\r\n url: '/app/device/updateOrderPackage',\r\n method: 'post',\r\n data\r\n })\r\n}\r\n\r\n// 更新用户余额\r\nexport const updateUserBalance = (orderId) => {\r\n return request({\r\n url: `/app/user/updateBalance/${orderId}`,\r\n method: 'post',\r\n hideLoading: true\r\n })\r\n}\r\n\r\n"],"names":["request","uni"],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"user.js","sources":["config/user.js"],"sourcesContent":["import request from './http'\r\n\r\n\r\nexport const login = (data) => {\r\n return request({\r\n url: '/app/user/login',\r\n method: 'get',\r\n data\r\n })\r\n}\r\n\r\n\r\nexport const getMyIndexInfo = (data) => {\r\n return request({\r\n url: '/app/user/userInfo',\r\n method: 'get',\r\n data,\r\n })\r\n}\r\n\r\n// 添加押金提现API\r\nexport const withdrawDeposit = (orderNo) => {\r\n console.log('调用提现API,订单号:', orderNo)\r\n return request({\r\n url: `/app/withdraw/add/${orderNo}`,\r\n method: 'get',\r\n hideLoading: true\r\n })\r\n}\r\n\r\n//获取所有全部订单\r\nexport const getOrderList = (data) => {\r\n return request({\r\n url: '/app/order/list',\r\n method: 'get',\r\n data,\r\n hideLoading:true\r\n })\r\n}\r\n\r\n//查询是否有订单\r\nexport const queryHasOrder = (deviceNo) => {\r\n return request({\r\n url: `/app/order/list?deviceNo=${deviceNo}&orderStatus=in_used`,\r\n method: 'get',\r\n })\r\n}\r\n\r\n// 查询指定设备号下,特定状态的订单列表\r\nexport const checkOrdersByStatus = (deviceNo, statuses) => {\r\n // statuses 是一个包含状态字符串的数组,例如 ['in_used', 'waiting_for_payment']\r\n const statusQuery = statuses.join(','); // 后端需要支持逗号分隔的状态查询\r\n return request({\r\n url: `/app/order/list?deviceNo=${deviceNo}&orderStatus=${statusQuery}`,\r\n method: 'get',\r\n hideLoading: true, // 隐藏加载提示,避免干扰用户\r\n ignoreEmptyError: true // 添加标记,表示即使返回空数据也不视为错误\r\n })\r\n}\r\n\r\n//设备查询\r\nexport const getDeviceInfo = (deviceNo) => {\r\n return request({\r\n url: `/app/device/${deviceNo}`,\r\n method: 'get',\r\n })\r\n}\r\n\r\n\r\n//创建订单\r\nexport const createOrder = (data) => {\r\n return request({\r\n url: '/app/order/add',\r\n method: 'post',\r\n data,\r\n })\r\n}\r\n\r\n//查询订单\r\nexport const queryById = (id) => {\r\n console.log(`查询订单详情, orderId: ${id}`)\r\n return request({\r\n url: `/app/order/${id}`,\r\n method: 'get',\r\n hideLoading: true\r\n })\r\n}\r\n\r\n\r\n//取消订单\nexport const cancelOrder = (data) => {\n\treturn request({\n\t\turl: `/device/order/clear/${data.orderId}`,\n\t\tmethod: 'get',\n\t\tdata,\n\t})\n}\r\n\r\n\r\n//结束订单\r\nexport const overOrderById = (orderId) => {\r\n console.log(`调用结束订单API, orderId: ${orderId}`)\r\n return request({\r\n url: `/app/order/close/${orderId}`,\r\n method: 'get',\r\n })\r\n}\r\n\r\n//立即租借\r\nexport const rentPowerBank = (deviceNo, phone) => {\r\n return request({\r\n url: '/app/device/rentPowerBank',\r\n method: 'post',\r\n data: { deviceNo, phone }\r\n })\r\n}\r\n\r\n//确认支付并弹出风扇\r\nexport const confirmPaymentAndRent = (orderId) => {\r\n console.log(`确认支付并弹出风扇, orderId: ${orderId}`)\r\n return request({\r\n url: `/app/device/confirmPaymentAndRent?orderId=${orderId}`,\r\n method: 'GET'\r\n })\r\n}\r\n\r\n\r\n\r\n//投诉反馈\r\nexport const addUserFeedback = (data) => {\r\n return request({\r\n url: '/app/feedback/add',\r\n method: 'post',\r\n data,\r\n })\r\n}\r\n\r\n//强制打开空格子\r\nexport const forcefOpenEmptyGrid = (deviceNo) => {\r\n console.log(`强制打开空格子, deviceNo: ${deviceNo}`)\r\n return request({\r\n url: `/app/device/forcef/${deviceNo}`,\r\n method: 'post'\r\n })\r\n}\r\n\r\n// 通过订单号获取订单信息\r\nexport const getOrderByOrderNo = (orderNo) => {\r\n return request({\r\n url: `/app/order/byOrderNo/${orderNo}`,\r\n method: 'get',\r\n hideLoading: true\r\n })\r\n}\r\n// 通过订单号获取支付分订单信息\r\nexport const getOrderByOrderNoScore = (orderNo) => {\r\n\tconsole.log('通过订单号获取支付分订单信息',orderNo);\r\n return request({\r\n url: `/app/wx-payment/score/create/${orderNo}`,\r\n method: 'get',\r\n hideLoading: true\r\n })\r\n}\r\n\r\nexport const getOrderByOrderNoScorePayStatus = (orderNo) => {\r\n\tconsole.log('通过订单号获取支付分订单状态',orderNo);\r\n return request({\r\n url: `/app/wx-payment/score/status/${orderNo}`,\r\n method: 'get',\r\n hideLoading: true\r\n })\r\n}\r\n\r\n// 更新订单套餐信息\r\nexport const updateOrderPackage = (data) => {\r\n console.log('更新订单套餐信息:', data)\r\n return request({\r\n url: '/app/device/updateOrderPackage',\r\n method: 'post',\r\n data\r\n })\r\n}\r\n\r\n// 更新用户余额\r\nexport const updateUserBalance = (orderId) => {\r\n return request({\r\n url: `/app/user/updateBalance/${orderId}`,\r\n method: 'post',\r\n hideLoading: true\r\n })\r\n}\r\n\r\n"],"names":["request","uni"],"mappings":"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"}
\ No newline at end of file
diff --git a/unpackage/dist/dev/.sourcemap/mp-weixin/pages/device/detail.js.map b/unpackage/dist/dev/.sourcemap/mp-weixin/pages/device/detail.js.map
index 7a64973..132dce2 100644
--- a/unpackage/dist/dev/.sourcemap/mp-weixin/pages/device/detail.js.map
+++ b/unpackage/dist/dev/.sourcemap/mp-weixin/pages/device/detail.js.map
@@ -1 +1 @@
-{"version":3,"file":"detail.js","sources":["pages/device/detail.vue","E:/HBuilderX.4.24.2024072208/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvZGV2aWNlL2RldGFpbC52dWU"],"sourcesContent":["\r\n\t\r\n\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t当前位置\r\n\t\t\t\t\t\t{{ deviceLocation }}\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t电池电量\r\n\t\t\t\t\t\t{{ batteryLevel }}%\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t¥5.00\r\n\t\t\t\t\t/小时\r\n\t\t\t\t\r\n\t\t\t\t封顶 ¥99\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t前15分钟内归还免费\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t不足60分钟按60分钟计费\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t持续计费至99元视为买断\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\r\n\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t请在使用前检查设备是否完好\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t请在指定区域内使用设备\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t归还时请确保设备完好,避免损坏\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\r\n\t\r\n\r\n\r\n\r\n\r\n","import MiniProgramPage from 'D:/uni-fans-score/pages/device/detail.vue'\nwx.createPage(MiniProgramPage)"],"names":["ref","reactive","onLoad","uni","getDeviceInfo","rentPowerBank","getOrderByOrderNo","updateOrderPackage","getOrderByOrderNoScore","initiateWeChatScorePayment","res","getOrderByOrderNoScorePayStatus"],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"detail.js","sources":["pages/device/detail.vue","E:/HBuilderX.4.24.2024072208/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvZGV2aWNlL2RldGFpbC52dWU"],"sourcesContent":["\r\n\t\r\n\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t当前位置\r\n\t\t\t\t\t\t{{ deviceLocation }}\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t电池电量\r\n\t\t\t\t\t\t{{ batteryLevel }}%\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t¥5.00\r\n\t\t\t\t\t/小时\r\n\t\t\t\t\r\n\t\t\t\t封顶 ¥99\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t前15分钟内归还免费\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t不足60分钟按60分钟计费\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t持续计费至99元视为买断\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t请在使用前检查设备是否完好\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t请在指定区域内使用设备\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t归还时请确保设备完好,避免损坏\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\r\n\t\r\n\r\n\r\n\r\n\r\n","import MiniProgramPage from 'D:/uni-fans-score/pages/device/detail.vue'\nwx.createPage(MiniProgramPage)"],"names":["ref","reactive","onLoad","uni","getDeviceInfo","rentPowerBank","getOrderByOrderNo","updateOrderPackage","getOrderByOrderNoScore","initiateWeChatScorePayment","res","getOrderByOrderNoScorePayStatus","cancelOrder"],"mappings":"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"}
\ No newline at end of file
diff --git a/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map b/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map
index dcd3dd8..1669345 100644
--- a/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map
+++ b/unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map
@@ -1 +1 @@
-{"version":3,"file":"index.js","sources":["pages/index/index.vue","E:/HBuilderX.4.24.2024072208/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvaW5kZXgvaW5kZXgudnVl"],"sourcesContent":["\r\n\t\r\n\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t扫码使用\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t扫描设备二维码即可使用或归还\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t5.0元/小时\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t15分钟内归还免费\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t不足1小时按1小时计费\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t封顶99元,计费达99元视为买断\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t1\r\n\t\t\t\t\t\r\n\t\t\t\t\t扫码开锁\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t2\r\n\t\t\t\t\t\r\n\t\t\t\t\t使用风扇\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t3\r\n\t\t\t\t\t\r\n\t\t\t\t\t归还结算\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\r\n\r\n\r\n\r\n\r\n","import MiniProgramPage from 'D:/uni-fans-score/pages/index/index.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni","getQueryString","wxLogin","URL","getDeviceInfo"],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"index.js","sources":["pages/index/index.vue","E:/HBuilderX.4.24.2024072208/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvaW5kZXgvaW5kZXgudnVl"],"sourcesContent":["\r\n\t\r\n\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t扫码使用\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t扫描设备二维码即可使用或归还\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t5.0元/小时\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t15分钟内归还免费\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t不足1小时按1小时计费\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t封顶99元,计费达99元视为买断\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t1\r\n\t\t\t\t\t\r\n\t\t\t\t\t扫码弹出\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t2\r\n\t\t\t\t\t\r\n\t\t\t\t\t使用风扇\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t3\r\n\t\t\t\t\t\r\n\t\t\t\t\t插入归还\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t4\r\n\t\t\t\t\t\r\n\t\t\t\t\t结束订单\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\r\n\r\n\r\n\r\n\r\n","import MiniProgramPage from 'D:/uni-fans-score/pages/index/index.vue'\nwx.createPage(MiniProgramPage)"],"names":["uni","getQueryString","wxLogin","URL","getDeviceInfo"],"mappings":"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"}
\ No newline at end of file
diff --git a/unpackage/dist/dev/.sourcemap/mp-weixin/pages/order/index.js.map b/unpackage/dist/dev/.sourcemap/mp-weixin/pages/order/index.js.map
index fde5314..f6e18b2 100644
--- a/unpackage/dist/dev/.sourcemap/mp-weixin/pages/order/index.js.map
+++ b/unpackage/dist/dev/.sourcemap/mp-weixin/pages/order/index.js.map
@@ -1 +1 @@
-{"version":3,"file":"index.js","sources":["pages/order/index.vue","E:/HBuilderX.4.24.2024072208/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvb3JkZXIvaW5kZXgudnVl"],"sourcesContent":["\r\n\t\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t{{ tab.text }}\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t暂无订单记录\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t共享风扇\r\n\t\t\t\t\t\t\t设备号:{{ order.deviceId }}\r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t微信支付分\r\n\t\t\t\t\t\t\t\t\t|\r\n\t\t\t\t\t\t\t\t\t免押租借\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t押金租借\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t开始时间:\r\n\t\t\t\t\t\t\t{{ order.startTime }}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t结束时间:\r\n\t\t\t\t\t\t\t{{ order.endTime || '-' }}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\r\n\r\n\r\n\r\n\r\n","import MiniProgramPage from 'D:/uni-fans-score/pages/order/index.vue'\nwx.createPage(MiniProgramPage)"],"names":["ref","reactive","onLoad","queryById","uni","getOrderList","getOrderByOrderNoScorePayStatus","confirmPaymentAndRent","cancelOrder"],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"index.js","sources":["pages/order/index.vue","E:/HBuilderX.4.24.2024072208/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvb3JkZXIvaW5kZXgudnVl"],"sourcesContent":["\r\n\t\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t{{ tab.text }}\r\n\t\t\t\r\n\t\t\r\n\r\n\t\t\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t暂无订单记录\r\n\t\t\t\r\n\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t共享风扇\r\n\t\t\t\t\t\t\t设备号:{{ order.deviceId }}\r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t微信支付分\r\n\t\t\t\t\t\t\t\t\t|\r\n\t\t\t\t\t\t\t\t\t免押租借\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t押金租借\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t开始时间:\r\n\t\t\t\t\t\t\t{{ order.startTime }}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t结束时间:\r\n\t\t\t\t\t\t\t{{ order.endTime || '-' }}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t\r\n\r\n\r\n\r\n\r\n","import MiniProgramPage from 'D:/uni-fans-score/pages/order/index.vue'\nwx.createPage(MiniProgramPage)"],"names":["ref","reactive","onLoad","queryById","uni","getOrderList","confirmPaymentAndRent","cancelOrder"],"mappings":";;;;;;;AAyHC,UAAM,aAAaA,kBAAI,CAAC;AACxB,UAAM,YAAYA,kBAAI,CAAA,CAAE;AAGxB,UAAM,iBAAiBC,cAAAA,SAAS;AAAA,MAC/B,KAAK;AAAA,QACJ,MAAM;AAAA,QACN,OAAO;AAAA,MACP;AAAA,MACD,KAAK;AAAA,QACJ,MAAM;AAAA,QACN,OAAO;AAAA,MACP;AAAA,MACD,KAAK;AAAA,QACJ,MAAM;AAAA,QACN,OAAO;AAAA,MACP;AAAA,MACD,KAAK;AAAA,QACJ,MAAM;AAAA,QACN,OAAO;AAAA,MACP;AAAA,MACD,uBAAuB;AAAA,QACtB,MAAM;AAAA,QACN,OAAO;AAAA,MACP;AAAA,MACD,WAAW;AAAA,QACV,MAAM;AAAA,QACN,OAAO;AAAA,MACP;AAAA,MACD,aAAa;AAAA,QACZ,MAAM;AAAA,QACN,OAAO;AAAA,MACP;AAAA,MACD,mBAAmB;AAAA,QAClB,MAAM;AAAA,QACN,OAAO;AAAA,MACP;AAAA,IACH,CAAE;AAGD,UAAM,kBAAkBA,cAAAA,SAAS;AAAA,MAAC;AAAA,QAChC,MAAM;AAAA,QACN,QAAQ,CAAE;AAAA,MACV;AAAA,MACD;AAAA,QACC,MAAM;AAAA,QACN,QAAQ,CAAC,qBAAqB;AAAA,MAC9B;AAAA,MACD;AAAA,QACC,MAAM;AAAA,QACN,QAAQ,CAAC,SAAS;AAAA,MAClB;AAAA,MACD;AAAA,QACC,MAAM;AAAA,QACN,QAAQ,CAAC,WAAW;AAAA,MACpB;AAAA,MACD;AAAA,QACC,MAAM;AAAA,QACN,QAAQ,CAAC,iBAAiB;AAAA,MAC1B;AAAA,IACH,CAAE;AAGDC,kBAAM,OAAC,OAAO,YAAY;AAEzB,UAAI,WAAW,QAAQ,SAAS;AAC/B,YAAI;AAEH,gBAAM,MAAM,MAAMC,YAAAA,UAAU,QAAQ,OAAO;AAC3C,cAAI,IAAI,SAAS,OAAO,IAAI,MAAM;AAEjC,kBAAM,YAAY,IAAI;AAGtB,kBAAM,iBAAiB,UAAU,aAAa,UAAU,cAAc;AAGtE,kBAAM,iBAAiB;AAAA,cACtB,SAAS,UAAU;AAAA,cACnB,QAAQ,UAAU;AAAA,cAClB,UAAU,UAAU;AAAA,cACpB,QAAQ,UAAU;AAAA,cAClB,WAAW;AAAA,cACX,SAAS,UAAU,WAAW;AAAA,cAC9B,QAAQ,UAAU,aAAa,UAAU,sBAAsB;AAAA,YACrE;AAGK,sBAAU,QAAQ,CAAC,gBAAgB,GAAG,UAAU,KAAK;AAGrD,kBAAM,WAAW,gBAAgB;AAAA,cAAU,SAC1C,IAAI,OAAO,SAAS,UAAU,WAAW;AAAA,YAC/C;AAEK,gBAAI,aAAa,IAAI;AACpB,wBAAU,QAAQ;AAAA,YAClB;AAAA,UACD;AAAA,QACD,SAAQ,OAAO;AACfC,wBAAc,MAAA,MAAA,SAAA,gCAAA,aAAa,KAAK;AAAA,QAChC;AAAA,MACD;AAGD,YAAM,cAAa;AAAA,IACrB,CAAE;AAGD,UAAM,YAAY,OAAO,UAAU;AAClC,iBAAW,QAAQ;AAEnB,YAAM,aAAa,gBAAgB,KAAK,EAAE,OAAO,CAAC;AAClD,YAAM,cAAc,UAAU;AAAA,IAChC;AAGC,UAAM,gBAAgB,OAAO,eAAe;AAC3C,UAAI;AACH,YAAG,cAAY,QAAU;AACxB,uBAAa;AAAA,YACZ,aAAY;AAAA,UACZ;AAAA,QACD;AACD,cAAM,MAAM,MAAMC,yBAAa,UAAU;AACzC,YAAI,IAAI,SAAS,OAAO,IAAI,QAAQ,IAAI,KAAK,SAAS;AAErD,oBAAU,QAAQ,IAAI,KAAK,QAAQ,IAAI,UAAQ;AAE9C,kBAAM,iBAAiB,KAAK,aAAa,KAAK,cAAc;AAE5D,mBAAO;AAAA,cACN,SAAS,KAAK;AAAA,cACd,SAAS,KAAK;AAAA,cACd,aAAa,KAAK;AAAA,cAClB,UAAU,KAAK;AAAA,cACf,QAAQ,KAAK;AAAA,cACb,WAAW;AAAA,cACX,SAAS,KAAK,WAAW;AAAA,cACzB,QAAQ,KAAK,aAAa,KAAK,sBAAsB;AAAA,YAC3D;AAAA,UACA,CAAK;AAAA,QACD;AAAA,MACD,SAAQ,OAAO;AACfD,sBAAc,MAAA,MAAA,SAAA,gCAAA,aAAa,KAAK;AAChCA,sBAAAA,MAAI,UAAU;AAAA,UACb,OAAO;AAAA,UACP,MAAM;AAAA,QACV,CAAI;AAAA,MACD;AAAA,IACH;AAsBC,UAAM,mBAAmB,CAAC,UAAU,YAAY;AAC/CA,oBAAAA,MAAY,MAAA,OAAA,gCAAA,OAAO;AACnBA,oBAAAA,MAAI,WAAW;AAAA,QACd,KAAK,gCAAgC,QAAQ,YAAY,OAAO;AAAA,MACnE,CAAG;AAAA,IACH;AAGC,UAAM,oBAAoB,CAAC,UAAU;AACpCA,oBAAAA,MAAI,WAAW;AAAA,QACd,KAAK,gCAAgC,MAAM,WAAW,MAAM,OAAO;AAAA,MACtE,CAAG;AAAA,IACH;AAGC,UAAM,gBAAgB,OAAO,UAAU;AACtC,UAAI;AACHA,sBAAAA,MAAI,YAAY;AAAA,UACf,OAAO;AAAA,QACX,CAAI;AAED,cAAM,MAAM,MAAME,YAAAA,sBAAsB,MAAM,OAAO;AACrD,YAAI,IAAI,SAAS,KAAK;AACrBF,wBAAG,MAAC,YAAW;AACfA,wBAAAA,MAAI,UAAU;AAAA,YACb,OAAO;AAAA,YACP,MAAM;AAAA,UACX,CAAK;AAGD,gBAAM,cAAc,gBAAgB,WAAW,KAAK,EAAE,MAAM;AAAA,QAChE,OAAU;AACN,gBAAM,IAAI,MAAM,IAAI,OAAO,MAAM;AAAA,QACjC;AAAA,MACD,SAAQ,OAAO;AACfA,sBAAG,MAAC,YAAW;AACfA,sBAAAA,MAAI,UAAU;AAAA,UACb,OAAO,MAAM,WAAW;AAAA,UACxB,MAAM;AAAA,QACV,CAAI;AAAA,MACD;AAAA,IACH;AAGC,UAAM,oBAAoB,OAAO,UAAU;AAC1C,UAAI;AACHA,sBAAAA,MAAI,UAAU;AAAA,UACb,OAAO;AAAA,UACP,SAAS;AAAA,UACT,SAAS,OAAO,QAAQ;AACvB,gBAAI,IAAI,SAAS;AAChBA,4BAAAA,MAAI,YAAY;AAAA,gBACf,OAAO;AAAA,cACd,CAAO;AAED,oBAAM,SAAS,MAAMG,wBAAY;AAAA,gBAChC,SAAS,MAAM;AAAA,cACtB,CAAO;AAED,kBAAI,QAAQ;AACXH,8BAAG,MAAC,YAAW;AACfA,8BAAAA,MAAI,UAAU;AAAA,kBACb,OAAO;AAAA,kBACP,MAAM;AAAA,gBACd,CAAQ;AAGD,sBAAM,cAAa;AAAA,cAC1B,OAAa;AACN,sBAAM,IAAI,MAAM,OAAO,OAAO,QAAQ;AAAA,cACtC;AAAA,YACD;AAAA,UACD;AAAA,QACL,CAAI;AAAA,MACD,SAAQ,OAAO;AACfA,sBAAG,MAAC,YAAW;AACfA,sBAAAA,MAAI,UAAU;AAAA,UACb,OAAO,MAAM,WAAW;AAAA,UACxB,MAAM;AAAA,QACV,CAAI;AAAA,MACD;AAAA,IACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACrXA,GAAG,WAAW,eAAe;"}
\ No newline at end of file
diff --git a/unpackage/dist/dev/.sourcemap/mp-weixin/util/index.js.map b/unpackage/dist/dev/.sourcemap/mp-weixin/util/index.js.map
index 7918d21..f90c75c 100644
--- a/unpackage/dist/dev/.sourcemap/mp-weixin/util/index.js.map
+++ b/unpackage/dist/dev/.sourcemap/mp-weixin/util/index.js.map
@@ -1 +1 @@
-{"version":3,"file":"index.js","sources":["util/index.js"],"sourcesContent":["import {\r\n\tlogin,\r\n\tgetMyIndexInfo\r\n} from \"../config/user\"\r\n\r\n// 微信登录方法\r\nexport const wxLogin = () => {\r\n\treturn new Promise((resolve, reject) => {\r\n\t\t// 1. 获取微信登录凭证\r\n\t\tuni.login({\r\n\t\t\tprovider: 'weixin',\r\n\t\t\tsuccess: async (loginRes) => {\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tif (loginRes.code) {\r\n\t\t\t\t\t\t// 2. 发送 code 到后端换取 token\r\n\t\t\t\t\t\tconst result = await login({\r\n\t\t\t\t\t\t\tcode: loginRes.code,\r\n\t\t\t\t\t\t\tappid: \"wxe752f45e7f7aa271\"\r\n\t\t\t\t\t\t})\r\n\r\n\t\t\t\t\t\tif (result.code === 200) {\r\n\t\t\t\t\t\t\t// 3. 保存token和用户信息\r\n\r\n\t\t\t\t\t\t\tuni.setStorageSync('token', result.data.LoginWxVo.access_token)\r\n\t\t\t\t\t\t\tuni.setStorageSync('client_id', result.data.LoginWxVo.client_id)\r\n\r\n\t\t\t\t\t\t\tresolve(result.data)\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthrow new Error(result.message || '登录失败')\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthrow new Error('获取微信登录凭证失败')\r\n\t\t\t\t\t}\r\n\t\t\t\t} catch (error) {\r\n\r\n\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\ttitle: error.message || '登录失败',\r\n\t\t\t\t\t\ticon: 'none'\r\n\t\t\t\t\t})\r\n\t\t\t\t\treject(error)\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tfail: (error) => {\r\n\t\t\t\tuni.showToast({\r\n\t\t\t\t\ttitle: '微信登录失败',\r\n\t\t\t\t\ticon: 'none'\r\n\t\t\t\t})\r\n\t\t\t\treject(error)\r\n\t\t\t}\r\n\t\t})\r\n\t})\r\n}\r\n\r\n// 检查登录状态\r\n// export const checkLogin = () => {\r\n// const token = uni.getStorageSync('token')\r\n// return !!token\r\n// }\r\n\r\n// 获取用户信息\r\nexport const getUserInfo = () => {\r\n\r\n\r\n\r\n\treturn new Promise(async (res, rej) => {\r\n\r\n\t\tconst result = await getMyIndexInfo({\r\n\t\t\tisHide: false,\r\n\t\t})\r\n\t\tres(result)\r\n\t})\r\n}\r\n\r\n// 调用微信支付分接口\r\nexport const initiateWeChatScorePayment = (paymentData) => {\r\n\treturn new Promise((resolve, reject) => {\r\n\t\t// 确保paymentData包含所需数据\r\n\t\tif (!paymentData || !paymentData.data || !paymentData.data.package) {\r\n\t\t\treject(new Error('支付参数不完整'));\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t\r\n\t\t// 使用wx.openBusinessView打开微信支付分小程序\r\n\t\twx.openBusinessView({\r\n\t\t\tbusinessType: 'wxpayScoreUse',\r\n\t\t\textraData: {\r\n\t\t\t\tmch_id: paymentData.data.mch_id,\r\n\t\t\t\tpackage: paymentData.data.package\r\n\t\t\t},\r\n\t\t\tsuccess: (businessRes) => {\r\n\t\t\t\tconsole.log('微信支付分小程序调用成功', businessRes);\r\n\t\t\t\t// 根据返回结果判断是否完成支付\r\n\t\t\t\tif (businessRes.errMsg === 'openBusinessView:ok') {\r\n\t\t\t\t\tresolve(businessRes);\r\n\t\t\t\t} else {\r\n\t\t\t\t\treject(new Error('支付流程未完成'));\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tfail: (error) => {\r\n\t\t\t\tconsole.error('微信支付分小程序调用失败', error);\r\n\t\t\t\tuni.showToast({\r\n\t\t\t\t\ttitle: error.errMsg || '支付分接口调用失败',\r\n\t\t\t\t\ticon: 'none'\r\n\t\t\t\t});\r\n\t\t\t\treject(error);\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n}\r\n\r\nexport const getQueryString = function (url, name) {\r\n var reg = new RegExp('(^|&|/?)' + name + '=([^&|/?]*)(&|/?|$)', 'i')\r\n var r = url.substr(1).match(reg)\r\n if (r != null) {\r\n return r[2]\r\n }\r\n return null;\r\n}"],"names":["uni","login","getMyIndexInfo","wx"],"mappings":";;;AAMY,MAAC,UAAU,MAAM;AAC5B,SAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AAEvCA,kBAAAA,MAAI,MAAM;AAAA,MACT,UAAU;AAAA,MACV,SAAS,OAAO,aAAa;AAE5B,YAAI;AACH,cAAI,SAAS,MAAM;AAElB,kBAAM,SAAS,MAAMC,kBAAM;AAAA,cAC1B,MAAM,SAAS;AAAA,cACf,OAAO;AAAA,YACd,CAAO;AAED,gBAAI,OAAO,SAAS,KAAK;AAGxBD,4BAAG,MAAC,eAAe,SAAS,OAAO,KAAK,UAAU,YAAY;AAC9DA,4BAAG,MAAC,eAAe,aAAa,OAAO,KAAK,UAAU,SAAS;AAE/D,sBAAQ,OAAO,IAAI;AAAA,YAC1B,OAAa;AACN,oBAAM,IAAI,MAAM,OAAO,WAAW,MAAM;AAAA,YACxC;AAAA,UACP,OAAY;AACN,kBAAM,IAAI,MAAM,YAAY;AAAA,UAC5B;AAAA,QACD,SAAQ,OAAO;AAEfA,wBAAAA,MAAI,UAAU;AAAA,YACb,OAAO,MAAM,WAAW;AAAA,YACxB,MAAM;AAAA,UACZ,CAAM;AACD,iBAAO,KAAK;AAAA,QACZ;AAAA,MACD;AAAA,MACD,MAAM,CAAC,UAAU;AAChBA,sBAAAA,MAAI,UAAU;AAAA,UACb,OAAO;AAAA,UACP,MAAM;AAAA,QACX,CAAK;AACD,eAAO,KAAK;AAAA,MACZ;AAAA,IACJ,CAAG;AAAA,EACH,CAAE;AACF;AASY,MAAC,cAAc,MAAM;AAIhC,SAAO,IAAI,QAAQ,OAAO,KAAK,QAAQ;AAEtC,UAAM,SAAS,MAAME,2BAAe;AAAA,MACnC,QAAQ;AAAA,IACX,CAAG;AACD,QAAI,MAAM;AAAA,EACZ,CAAE;AACF;AAGY,MAAC,6BAA6B,CAAC,gBAAgB;AAC1D,SAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AAEvC,QAAI,CAAC,eAAe,CAAC,YAAY,QAAQ,CAAC,YAAY,KAAK,SAAS;AACnE,aAAO,IAAI,MAAM,SAAS,CAAC;AAC3B;AAAA,IACA;AAGDC,kBAAAA,KAAG,iBAAiB;AAAA,MACnB,cAAc;AAAA,MACd,WAAW;AAAA,QACV,QAAQ,YAAY,KAAK;AAAA,QACzB,SAAS,YAAY,KAAK;AAAA,MAC1B;AAAA,MACD,SAAS,CAAC,gBAAgB;AACzBH,sBAAA,MAAA,MAAA,OAAA,uBAAY,gBAAgB,WAAW;AAEvC,YAAI,YAAY,WAAW,uBAAuB;AACjD,kBAAQ,WAAW;AAAA,QACxB,OAAW;AACN,iBAAO,IAAI,MAAM,SAAS,CAAC;AAAA,QAC3B;AAAA,MACD;AAAA,MACD,MAAM,CAAC,UAAU;AAChBA,sBAAc,MAAA,MAAA,SAAA,wBAAA,gBAAgB,KAAK;AACnCA,sBAAAA,MAAI,UAAU;AAAA,UACb,OAAO,MAAM,UAAU;AAAA,UACvB,MAAM;AAAA,QACX,CAAK;AACD,eAAO,KAAK;AAAA,MACZ;AAAA,IACJ,CAAG;AAAA,EACH,CAAE;AACF;AAEY,MAAC,iBAAiB,SAAU,KAAK,MAAM;AAC/C,MAAI,MAAM,IAAI,OAAO,aAAa,OAAO,uBAAuB,GAAG;AACnE,MAAI,IAAI,IAAI,OAAO,CAAC,EAAE,MAAM,GAAG;AAC/B,MAAI,KAAK,MAAM;AACX,WAAO,EAAE,CAAC;AAAA,EACb;AACD,SAAO;AACX;;;;;"}
\ No newline at end of file
+{"version":3,"file":"index.js","sources":["util/index.js"],"sourcesContent":["import {\r\n\tlogin,\r\n\tgetMyIndexInfo\r\n} from \"../config/user\"\r\n\r\n// 微信登录方法\r\nexport const wxLogin = () => {\r\n\treturn new Promise((resolve, reject) => {\r\n\t\t// 1. 获取微信登录凭证\r\n\t\tuni.login({\r\n\t\t\tprovider: 'weixin',\r\n\t\t\tsuccess: async (loginRes) => {\r\n\r\n\t\t\t\ttry {\r\n\t\t\t\t\tif (loginRes.code) {\r\n\t\t\t\t\t\t// 2. 发送 code 到后端换取 token\r\n\t\t\t\t\t\tconst result = await login({\r\n\t\t\t\t\t\t\tcode: loginRes.code,\r\n\t\t\t\t\t\t\tappid: \"wx2165f0be356ae7a9\"\r\n\t\t\t\t\t\t})\r\n\r\n\t\t\t\t\t\tif (result.code === 200) {\r\n\t\t\t\t\t\t\t// 3. 保存token和用户信息\r\n\r\n\t\t\t\t\t\t\tuni.setStorageSync('token', result.data.LoginWxVo.access_token)\r\n\t\t\t\t\t\t\tuni.setStorageSync('client_id', result.data.LoginWxVo.client_id)\r\n\r\n\t\t\t\t\t\t\tresolve(result.data)\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\tthrow new Error(result.message || '登录失败')\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthrow new Error('获取微信登录凭证失败')\r\n\t\t\t\t\t}\r\n\t\t\t\t} catch (error) {\r\n\r\n\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\ttitle: error.message || '登录失败',\r\n\t\t\t\t\t\ticon: 'none'\r\n\t\t\t\t\t})\r\n\t\t\t\t\treject(error)\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tfail: (error) => {\r\n\t\t\t\tuni.showToast({\r\n\t\t\t\t\ttitle: '微信登录失败',\r\n\t\t\t\t\ticon: 'none'\r\n\t\t\t\t})\r\n\t\t\t\treject(error)\r\n\t\t\t}\r\n\t\t})\r\n\t})\r\n}\r\n\r\n// 检查登录状态\r\n// export const checkLogin = () => {\r\n// const token = uni.getStorageSync('token')\r\n// return !!token\r\n// }\r\n\r\n// 获取用户信息\r\nexport const getUserInfo = () => {\r\n\r\n\r\n\r\n\treturn new Promise(async (res, rej) => {\r\n\r\n\t\tconst result = await getMyIndexInfo({\r\n\t\t\tisHide: false,\r\n\t\t})\r\n\t\tres(result)\r\n\t})\r\n}\r\n\r\n// 调用微信支付分接口\r\nexport const initiateWeChatScorePayment = (paymentData) => {\r\n\treturn new Promise((resolve, reject) => {\r\n\t\t// 确保paymentData包含所需数据\r\n\t\tif (!paymentData || !paymentData.data || !paymentData.data.package) {\r\n\t\t\treject(new Error('支付参数不完整'));\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t\r\n\t\t// 使用wx.openBusinessView打开微信支付分小程序\r\n\t\twx.openBusinessView({\r\n\t\t\tbusinessType: 'wxpayScoreUse',\r\n\t\t\textraData: {\r\n\t\t\t\tmch_id: paymentData.data.mch_id,\r\n\t\t\t\tpackage: paymentData.data.package\r\n\t\t\t},\r\n\t\t\tsuccess: (businessRes) => {\r\n\t\t\t\t// 根据返回结果判断是否完成支付\r\n\t\t\t\tif (businessRes.errMsg === 'openBusinessView:ok') {\r\n\t\t\t\t\tresolve(businessRes);\r\n\t\t\t\t} else {\r\n\t\t\t\t\treject(new Error('支付流程未完成'));\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tfail: (error) => {\r\n\t\t\t\tconsole.error('微信支付分小程序调用失败', error);\r\n\t\t\t\tuni.showToast({\r\n\t\t\t\t\ttitle: error.errMsg || '支付分接口调用失败',\r\n\t\t\t\t\ticon: 'none'\r\n\t\t\t\t});\r\n\t\t\t\treject(error);\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n}\r\n\r\nexport const getQueryString = function (url, name) {\r\n var reg = new RegExp('(^|&|/?)' + name + '=([^&|/?]*)(&|/?|$)', 'i')\r\n var r = url.substr(1).match(reg)\r\n if (r != null) {\r\n return r[2]\r\n }\r\n return null;\r\n}"],"names":["uni","login","getMyIndexInfo","wx"],"mappings":";;;AAMY,MAAC,UAAU,MAAM;AAC5B,SAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AAEvCA,kBAAAA,MAAI,MAAM;AAAA,MACT,UAAU;AAAA,MACV,SAAS,OAAO,aAAa;AAE5B,YAAI;AACH,cAAI,SAAS,MAAM;AAElB,kBAAM,SAAS,MAAMC,kBAAM;AAAA,cAC1B,MAAM,SAAS;AAAA,cACf,OAAO;AAAA,YACd,CAAO;AAED,gBAAI,OAAO,SAAS,KAAK;AAGxBD,4BAAG,MAAC,eAAe,SAAS,OAAO,KAAK,UAAU,YAAY;AAC9DA,4BAAG,MAAC,eAAe,aAAa,OAAO,KAAK,UAAU,SAAS;AAE/D,sBAAQ,OAAO,IAAI;AAAA,YAC1B,OAAa;AACN,oBAAM,IAAI,MAAM,OAAO,WAAW,MAAM;AAAA,YACxC;AAAA,UACP,OAAY;AACN,kBAAM,IAAI,MAAM,YAAY;AAAA,UAC5B;AAAA,QACD,SAAQ,OAAO;AAEfA,wBAAAA,MAAI,UAAU;AAAA,YACb,OAAO,MAAM,WAAW;AAAA,YACxB,MAAM;AAAA,UACZ,CAAM;AACD,iBAAO,KAAK;AAAA,QACZ;AAAA,MACD;AAAA,MACD,MAAM,CAAC,UAAU;AAChBA,sBAAAA,MAAI,UAAU;AAAA,UACb,OAAO;AAAA,UACP,MAAM;AAAA,QACX,CAAK;AACD,eAAO,KAAK;AAAA,MACZ;AAAA,IACJ,CAAG;AAAA,EACH,CAAE;AACF;AASY,MAAC,cAAc,MAAM;AAIhC,SAAO,IAAI,QAAQ,OAAO,KAAK,QAAQ;AAEtC,UAAM,SAAS,MAAME,2BAAe;AAAA,MACnC,QAAQ;AAAA,IACX,CAAG;AACD,QAAI,MAAM;AAAA,EACZ,CAAE;AACF;AAGY,MAAC,6BAA6B,CAAC,gBAAgB;AAC1D,SAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AAEvC,QAAI,CAAC,eAAe,CAAC,YAAY,QAAQ,CAAC,YAAY,KAAK,SAAS;AACnE,aAAO,IAAI,MAAM,SAAS,CAAC;AAC3B;AAAA,IACA;AAGDC,kBAAAA,KAAG,iBAAiB;AAAA,MACnB,cAAc;AAAA,MACd,WAAW;AAAA,QACV,QAAQ,YAAY,KAAK;AAAA,QACzB,SAAS,YAAY,KAAK;AAAA,MAC1B;AAAA,MACD,SAAS,CAAC,gBAAgB;AAEzB,YAAI,YAAY,WAAW,uBAAuB;AACjD,kBAAQ,WAAW;AAAA,QACxB,OAAW;AACN,iBAAO,IAAI,MAAM,SAAS,CAAC;AAAA,QAC3B;AAAA,MACD;AAAA,MACD,MAAM,CAAC,UAAU;AAChBH,sBAAc,MAAA,MAAA,SAAA,wBAAA,gBAAgB,KAAK;AACnCA,sBAAAA,MAAI,UAAU;AAAA,UACb,OAAO,MAAM,UAAU;AAAA,UACvB,MAAM;AAAA,QACX,CAAK;AACD,eAAO,KAAK;AAAA,MACZ;AAAA,IACJ,CAAG;AAAA,EACH,CAAE;AACF;AAEY,MAAC,iBAAiB,SAAU,KAAK,MAAM;AAC/C,MAAI,MAAM,IAAI,OAAO,aAAa,OAAO,uBAAuB,GAAG;AACnE,MAAI,IAAI,IAAI,OAAO,CAAC,EAAE,MAAM,GAAG;AAC/B,MAAI,KAAK,MAAM;AACX,WAAO,EAAE,CAAC;AAAA,EACb;AACD,SAAO;AACX;;;;;"}
\ No newline at end of file
diff --git a/unpackage/dist/dev/.sourcemap/mp-weixin/utils/orderMonitor.js.map b/unpackage/dist/dev/.sourcemap/mp-weixin/utils/orderMonitor.js.map
index f86c255..efb6619 100644
--- a/unpackage/dist/dev/.sourcemap/mp-weixin/utils/orderMonitor.js.map
+++ b/unpackage/dist/dev/.sourcemap/mp-weixin/utils/orderMonitor.js.map
@@ -1 +1 @@
-{"version":3,"file":"orderMonitor.js","sources":["utils/orderMonitor.js"],"sourcesContent":["import { queryById } from '@/config/user.js'\r\n\r\n/**\r\n * 订单监控服务\r\n * 用于在后台监控订单状态变化,特别是归还完成状态\r\n */\r\nclass OrderMonitor {\r\n constructor() {\r\n this.activeOrders = new Map() // 存储活跃订单 Map\r\n this.timer = null\r\n this.checkInterval = 10000 // 10秒检查一次\r\n this.isRunning = false\r\n this.currentPage = null // 当前活跃页面\r\n }\r\n \r\n /**\r\n * 添加订单到监控队列\r\n * @param {Object} orderData 订单数据对象,必须包含orderId字段\r\n * @param {String} pageName 关联的页面名称,默认为'return'\r\n */\r\n addOrder(orderData, pageName = 'return') {\r\n if (!orderData || !orderData.orderId) {\r\n console.error('添加订单监控失败:无效的订单数据')\r\n return\r\n }\r\n \r\n console.log(`添加订单到监控队列: ${orderData.orderId}, 页面: ${pageName}`)\r\n this.activeOrders.set(orderData.orderId, {\r\n ...orderData,\r\n pageName\r\n })\r\n \r\n // 如果监控服务尚未启动,则启动\r\n if (!this.isRunning) {\r\n this.start()\r\n }\r\n }\r\n \r\n /**\r\n * 移除订单的监控\r\n * @param {Object} params 包含orderId或pageName的对象\r\n */\r\n removeOrder(params) {\r\n if (!params) return\r\n \r\n // 如果提供了orderId,直接删除该订单\r\n if (params.orderId && this.activeOrders.has(params.orderId)) {\r\n console.log('从监控队列移除订单:', params.orderId)\r\n this.activeOrders.delete(params.orderId)\r\n } \r\n // 如果提供了pageName,删除该页面关联的所有订单\r\n else if (params.pageName) {\r\n console.log('从监控队列移除页面相关订单:', params.pageName)\r\n for (const [orderId, data] of this.activeOrders.entries()) {\r\n if (data.pageName === params.pageName) {\r\n this.activeOrders.delete(orderId)\r\n }\r\n }\r\n }\r\n \r\n // 如果没有订单需要监控了,停止服务\r\n if (this.activeOrders.size === 0) {\r\n this.stop()\r\n }\r\n }\r\n \r\n /**\r\n * 设置当前活跃页面\r\n * @param {String} pageName 页面名称\r\n */\r\n setActivePage(pageName) {\r\n this.currentPage = pageName\r\n console.log('设置当前活跃页面:', pageName)\r\n }\r\n \r\n /**\r\n * 启动监控服务\r\n */\r\n start() {\r\n if (this.isRunning) return\r\n \r\n console.log('启动订单监控服务')\r\n this.isRunning = true\r\n this.checkOrders()\r\n \r\n this.timer = setInterval(() => {\r\n this.checkOrders()\r\n }, this.checkInterval)\r\n }\r\n \r\n /**\r\n * 停止监控服务\r\n */\r\n stop() {\r\n if (!this.isRunning) return\r\n \r\n console.log('停止订单监控服务')\r\n this.isRunning = false\r\n \r\n if (this.timer) {\r\n clearInterval(this.timer)\r\n this.timer = null\r\n }\r\n }\r\n \r\n /**\r\n * 检查所有活跃订单的状态\r\n */\r\n async checkOrders() {\r\n if (this.activeOrders.size === 0) return\r\n \r\n console.log(`检查 ${this.activeOrders.size} 个活跃订单状态, 当前页面: ${this.currentPage}`)\r\n \r\n // 只检查当前活跃页面关联的订单,或无页面关联的订单\r\n for (const [orderId, data] of this.activeOrders.entries()) {\r\n try {\r\n // 只在归还页面(或页面未指定时)才执行轮询\r\n if (!data.pageName || data.pageName === 'return') {\r\n if (this.currentPage === 'return' || this.currentPage === null) {\r\n await this.checkOrderStatus(orderId)\r\n } else {\r\n console.log(`跳过订单状态检查: ${orderId}, 当前不在归还页面`)\r\n }\r\n }\r\n } catch (error) {\r\n console.error(`检查订单状态失败: ${orderId}`, error)\r\n }\r\n }\r\n }\r\n \r\n /**\r\n * 检查单个订单的状态\r\n * @param {String} orderId 订单ID\r\n */\r\n async checkOrderStatus(orderId) {\r\n try {\r\n console.log(`检查订单 ${orderId} 的状态`)\r\n const result = await queryById(orderId)\r\n \r\n if (result.code === 200 && result.data) {\r\n const orderData = result.data\r\n const existingData = this.activeOrders.get(orderId)\r\n const pageName = existingData ? existingData.pageName : null\r\n \r\n // 更新本地存储的订单数据,保留页面关联信息\r\n this.activeOrders.set(orderId, {\r\n ...orderData,\r\n pageName\r\n })\r\n \r\n // 检查订单是否已完成\r\n if (orderData.orderStatus === 'used_done' || orderData.orderStatus === 'used_down') {\r\n console.log(`订单 ${orderId} 已完成!`)\r\n \r\n // 触发全局事件\r\n uni.$emit('orderCompleted', orderData)\r\n \r\n // 显示全局通知\r\n uni.showToast({\r\n title: '风扇归还成功',\r\n icon: 'success',\r\n duration: 2000\r\n })\r\n \r\n // 播放通知声音(如果需要)\r\n const innerAudioContext = uni.createInnerAudioContext()\r\n innerAudioContext.src = '/static/audio/return_success.mp3'\r\n innerAudioContext.play()\r\n \r\n // 完成的订单不再需要监控\r\n this.removeOrder({orderId})\r\n \r\n // 如果用户不在归还页面,则显示归还成功弹窗\r\n setTimeout(() => {\r\n uni.showModal({\r\n title: '归还成功',\r\n content: '风扇已归还成功,剩余押金将退还到您的账户',\r\n confirmText: '查看详情',\r\n success: (res) => {\r\n if (res.confirm) {\r\n // 跳转到归还成功页面查看详情\r\n uni.redirectTo({\r\n url: `/pages/order/return-success?orderId=${orderId}`\r\n })\r\n }\r\n }\r\n })\r\n }, 500)\r\n }\r\n }\r\n } catch (error) {\r\n console.error(`检查订单 ${orderId} 状态出错:`, error)\r\n }\r\n }\r\n}\r\n\r\n// 导出单例实例\r\nexport const orderMonitor = new OrderMonitor()\r\n\r\n// 监听页面切换事件\r\nuni.onAppRoute((route) => {\r\n const pagePath = route.path || ''\r\n const pageSegments = pagePath.split('/')\r\n const pageName = pageSegments[pageSegments.length - 1]\r\n \r\n // 设置当前活跃页面\r\n orderMonitor.setActivePage(pageName || null)\r\n \r\n console.log('页面切换:', pagePath, '当前活跃页面:', pageName)\r\n})\r\n\r\n// 页面加载时自动恢复监控上次的活跃订单(如果有)\r\nconst initOrderMonitor = () => {\r\n const lastActiveOrderId = uni.getStorageSync('activeOrderId')\r\n if (lastActiveOrderId) {\r\n const lastOrderData = { orderId: lastActiveOrderId }\r\n orderMonitor.addOrder(lastOrderData, 'return')\r\n }\r\n}\r\n\r\n// 初始化\r\ninitOrderMonitor() "],"names":["uni","queryById"],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"orderMonitor.js","sources":["utils/orderMonitor.js"],"sourcesContent":["import { queryById } from '@/config/user.js'\r\n\r\n/**\r\n * 订单监控服务\r\n * 用于在后台监控订单状态变化,特别是归还完成状态\r\n */\r\nclass OrderMonitor {\r\n constructor() {\r\n this.activeOrders = new Map() // 存储活跃订单 Map\r\n this.timer = null\r\n this.checkInterval = 10000 // 10秒检查一次\r\n this.isRunning = false\r\n this.currentPage = null // 当前活跃页面\r\n }\r\n \r\n /**\r\n * 添加订单到监控队列\r\n * @param {Object} orderData 订单数据对象,必须包含orderId字段\r\n * @param {String} pageName 关联的页面名称,默认为'return'\r\n */\r\n addOrder(orderData, pageName = 'return') {\r\n if (!orderData || !orderData.orderId) {\r\n console.error('添加订单监控失败:无效的订单数据')\r\n return\r\n }\r\n \r\n console.log(`添加订单到监控队列: ${orderData.orderId}, 页面: ${pageName}`)\r\n this.activeOrders.set(orderData.orderId, {\r\n ...orderData,\r\n pageName\r\n })\r\n \r\n // 如果监控服务尚未启动,则启动\r\n if (!this.isRunning) {\r\n this.start()\r\n }\r\n }\r\n \r\n /**\r\n * 移除订单的监控\r\n * @param {Object} params 包含orderId或pageName的对象\r\n */\r\n removeOrder(params) {\r\n if (!params) return\r\n \r\n // 如果提供了orderId,直接删除该订单\r\n if (params.orderId && this.activeOrders.has(params.orderId)) {\r\n console.log('从监控队列移除订单:', params.orderId)\r\n this.activeOrders.delete(params.orderId)\r\n } \r\n // 如果提供了pageName,删除该页面关联的所有订单\r\n else if (params.pageName) {\r\n console.log('从监控队列移除页面相关订单:', params.pageName)\r\n for (const [orderId, data] of this.activeOrders.entries()) {\r\n if (data.pageName === params.pageName) {\r\n this.activeOrders.delete(orderId)\r\n }\r\n }\r\n }\r\n \r\n // 如果没有订单需要监控了,停止服务\r\n if (this.activeOrders.size === 0) {\r\n this.stop()\r\n }\r\n }\r\n \r\n /**\r\n * 设置当前活跃页面\r\n * @param {String} pageName 页面名称\r\n */\r\n setActivePage(pageName) {\r\n this.currentPage = pageName\r\n console.log('设置当前活跃页面:', pageName)\r\n }\r\n \r\n /**\r\n * 启动监控服务\r\n */\r\n start() {\r\n if (this.isRunning) return\r\n \r\n console.log('启动订单监控服务')\r\n this.isRunning = true\r\n this.checkOrders()\r\n \r\n this.timer = setInterval(() => {\r\n this.checkOrders()\r\n }, this.checkInterval)\r\n }\r\n \r\n /**\r\n * 停止监控服务\r\n */\r\n stop() {\r\n if (!this.isRunning) return\r\n \r\n console.log('停止订单监控服务')\r\n this.isRunning = false\r\n \r\n if (this.timer) {\r\n clearInterval(this.timer)\r\n this.timer = null\r\n }\r\n }\r\n \r\n /**\r\n * 检查所有活跃订单的状态\r\n */\r\n async checkOrders() {\r\n if (this.activeOrders.size === 0) return\r\n \r\n console.log(`检查 ${this.activeOrders.size} 个活跃订单状态, 当前页面: ${this.currentPage}`)\r\n \r\n // 只检查当前活跃页面关联的订单,或无页面关联的订单\r\n for (const [orderId, data] of this.activeOrders.entries()) {\r\n try {\r\n // 只在归还页面(或页面未指定时)才执行轮询\r\n if (!data.pageName || data.pageName === 'return') {\r\n if (this.currentPage === 'return' || this.currentPage === null) {\r\n await this.checkOrderStatus(orderId)\r\n } else {\r\n // console.log(`跳过订单状态检查: ${orderId}, 当前不在归还页面`)\r\n }\r\n }\r\n } catch (error) {\r\n // console.error(`检查订单状态失败: ${orderId}`, error)\r\n }\r\n }\r\n }\r\n \r\n /**\r\n * 检查单个订单的状态\r\n * @param {String} orderId 订单ID\r\n */\r\n async checkOrderStatus(orderId) {\r\n try {\r\n console.log(`检查订单 ${orderId} 的状态`)\r\n const result = await queryById(orderId)\r\n \r\n if (result.code === 200 && result.data) {\r\n const orderData = result.data\r\n const existingData = this.activeOrders.get(orderId)\r\n const pageName = existingData ? existingData.pageName : null\r\n \r\n // 更新本地存储的订单数据,保留页面关联信息\r\n this.activeOrders.set(orderId, {\r\n ...orderData,\r\n pageName\r\n })\r\n \r\n // 检查订单是否已完成\r\n if (orderData.orderStatus === 'used_done' || orderData.orderStatus === 'used_down') {\r\n console.log(`订单 ${orderId} 已完成!`)\r\n \r\n // 触发全局事件\r\n uni.$emit('orderCompleted', orderData)\r\n \r\n // 显示全局通知\r\n uni.showToast({\r\n title: '风扇归还成功',\r\n icon: 'success',\r\n duration: 2000\r\n })\r\n \r\n // 播放通知声音(如果需要)\r\n const innerAudioContext = uni.createInnerAudioContext()\r\n innerAudioContext.src = '/static/audio/return_success.mp3'\r\n innerAudioContext.play()\r\n \r\n // 完成的订单不再需要监控\r\n this.removeOrder({orderId})\r\n \r\n // 如果用户不在归还页面,则显示归还成功弹窗\r\n setTimeout(() => {\r\n uni.showModal({\r\n title: '归还成功',\r\n content: '风扇已归还成功,剩余押金将退还到您的账户',\r\n confirmText: '查看详情',\r\n success: (res) => {\r\n if (res.confirm) {\r\n // 跳转到归还成功页面查看详情\r\n uni.redirectTo({\r\n url: `/pages/order/return-success?orderId=${orderId}`\r\n })\r\n }\r\n }\r\n })\r\n }, 500)\r\n }\r\n }\r\n } catch (error) {\r\n console.error(`检查订单 ${orderId} 状态出错:`, error)\r\n }\r\n }\r\n}\r\n\r\n// 导出单例实例\r\nexport const orderMonitor = new OrderMonitor()\r\n\r\n// 监听页面切换事件\r\nuni.onAppRoute((route) => {\r\n const pagePath = route.path || ''\r\n const pageSegments = pagePath.split('/')\r\n const pageName = pageSegments[pageSegments.length - 1]\r\n \r\n // 设置当前活跃页面\r\n orderMonitor.setActivePage(pageName || null)\r\n \r\n console.log('页面切换:', pagePath, '当前活跃页面:', pageName)\r\n})\r\n\r\n// 页面加载时自动恢复监控上次的活跃订单(如果有)\r\nconst initOrderMonitor = () => {\r\n const lastActiveOrderId = uni.getStorageSync('activeOrderId')\r\n if (lastActiveOrderId) {\r\n const lastOrderData = { orderId: lastActiveOrderId }\r\n orderMonitor.addOrder(lastOrderData, 'return')\r\n }\r\n}\r\n\r\n// 初始化\r\ninitOrderMonitor() "],"names":["uni","queryById"],"mappings":"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"}
\ No newline at end of file
diff --git a/unpackage/dist/dev/mp-weixin/app.js b/unpackage/dist/dev/mp-weixin/app.js
index 8b5b2a4..62bcd80 100644
--- a/unpackage/dist/dev/mp-weixin/app.js
+++ b/unpackage/dist/dev/mp-weixin/app.js
@@ -33,9 +33,8 @@ const _sfc_main = {
async autoLogin() {
try {
const loginResult = await util_index.wxLogin();
- common_vendor.index.__f__("log", "at App.vue:28", "自动登录成功:", loginResult);
} catch (error) {
- common_vendor.index.__f__("error", "at App.vue:31", "自动登录失败:", error);
+ common_vendor.index.__f__("error", "at App.vue:30", "自动登录失败:", error);
}
}
}
diff --git a/unpackage/dist/dev/mp-weixin/common/vendor.js b/unpackage/dist/dev/mp-weixin/common/vendor.js
index aeca971..446430a 100644
--- a/unpackage/dist/dev/mp-weixin/common/vendor.js
+++ b/unpackage/dist/dev/mp-weixin/common/vendor.js
@@ -6990,7 +6990,7 @@ function isConsoleWritable() {
function initRuntimeSocketService() {
const hosts = "192.168.10.59,127.0.0.1";
const port = "8090";
- const id = "mp-weixin_yxJg9-";
+ const id = "mp-weixin_f_V2rb";
const lazy = typeof swan !== "undefined";
let restoreError = lazy ? () => {
} : initOnError();
diff --git a/unpackage/dist/dev/mp-weixin/config/http.js b/unpackage/dist/dev/mp-weixin/config/http.js
index 05aceca..c9724a0 100644
--- a/unpackage/dist/dev/mp-weixin/config/http.js
+++ b/unpackage/dist/dev/mp-weixin/config/http.js
@@ -3,7 +3,6 @@ const common_vendor = require("../common/vendor.js");
const config_url = require("./url.js");
const request = (option) => {
return new Promise((resolve, reject) => {
- common_vendor.index.__f__("log", "at config/http.js:9", `发起请求: ${option.method} ${config_url.URL + option.url}`, option.data);
if (!option.hideLoading) {
common_vendor.index.showLoading({
title: option.loadingText || "加载中...",
@@ -22,9 +21,8 @@ const request = (option) => {
"Clientid": common_vendor.index.getStorageSync("client_id")
},
success(res) {
- common_vendor.index.__f__("log", "at config/http.js:32", `请求响应: ${option.url}`, res);
if (res.statusCode !== 200) {
- common_vendor.index.__f__("error", "at config/http.js:36", `HTTP状态码错误: ${res.statusCode}`, res.data);
+ common_vendor.index.__f__("error", "at config/http.js:33", `HTTP状态码错误: ${res.statusCode}`, res.data);
if (res.data) {
resolve(res.data);
return;
@@ -33,7 +31,7 @@ const request = (option) => {
return;
}
if (res.data && res.data.code !== 200) {
- common_vendor.index.__f__("warn", "at config/http.js:50", `业务状态码错误: ${res.data.code}`, res.data);
+ common_vendor.index.__f__("warn", "at config/http.js:47", `业务状态码错误: ${res.data.code}`, res.data);
if (option.ignoreEmptyError && (res.data.code === 500 && res.data.msg && (res.data.msg.includes("未找到") || res.data.msg.includes("不存在")))) {
resolve({
code: 200,
@@ -48,7 +46,7 @@ const request = (option) => {
resolve(res.data);
},
fail(err) {
- common_vendor.index.__f__("error", "at config/http.js:74", `请求失败: ${option.url}`, err);
+ common_vendor.index.__f__("error", "at config/http.js:71", `请求失败: ${option.url}`, err);
reject(err);
},
complete() {
diff --git a/unpackage/dist/dev/mp-weixin/config/url.js b/unpackage/dist/dev/mp-weixin/config/url.js
index a2a35f0..6ee4f81 100644
--- a/unpackage/dist/dev/mp-weixin/config/url.js
+++ b/unpackage/dist/dev/mp-weixin/config/url.js
@@ -1,6 +1,6 @@
"use strict";
const URL = "https://unifans.gxfs123.com/api";
-const appid = "wxe752f45e7f7aa271";
+const appid = "wx2165f0be356ae7a9";
exports.URL = URL;
exports.appid = appid;
//# sourceMappingURL=../../.sourcemap/mp-weixin/config/url.js.map
diff --git a/unpackage/dist/dev/mp-weixin/config/user.js b/unpackage/dist/dev/mp-weixin/config/user.js
index a4db370..ee484f5 100644
--- a/unpackage/dist/dev/mp-weixin/config/user.js
+++ b/unpackage/dist/dev/mp-weixin/config/user.js
@@ -58,7 +58,7 @@ const queryById = (id) => {
};
const cancelOrder = (data) => {
return config_http.request({
- url: "/orderInfo/cancelOrder",
+ url: `/device/order/clear/${data.orderId}`,
method: "get",
data
});
@@ -74,7 +74,7 @@ const confirmPaymentAndRent = (orderId) => {
common_vendor.index.__f__("log", "at config/user.js:120", `确认支付并弹出风扇, orderId: ${orderId}`);
return config_http.request({
url: `/app/device/confirmPaymentAndRent?orderId=${orderId}`,
- method: "post"
+ method: "GET"
});
};
const getOrderByOrderNo = (orderNo) => {
diff --git a/unpackage/dist/dev/mp-weixin/pages/device/detail.js b/unpackage/dist/dev/mp-weixin/pages/device/detail.js
index d7cea12..8a2e222 100644
--- a/unpackage/dist/dev/mp-weixin/pages/device/detail.js
+++ b/unpackage/dist/dev/mp-weixin/pages/device/detail.js
@@ -20,7 +20,7 @@ const _sfc_main = {
common_vendor.onLoad((options) => {
deviceId.value = options.deviceNo;
checkOrderStatus();
- common_vendor.index.__f__("log", "at pages/device/detail.vue:173", options.deviceNo);
+ common_vendor.index.__f__("log", "at pages/device/detail.vue:174", options.deviceNo);
fetchDeviceInfo();
});
const fetchDeviceInfo = async () => {
@@ -104,7 +104,7 @@ const _sfc_main = {
if (payWay == "wx-pay") {
common_vendor.index.hideLoading();
const res = await config_user.getOrderByOrderNo(order.orderNo);
- common_vendor.index.__f__("log", "at pages/device/detail.vue:286", res);
+ common_vendor.index.__f__("log", "at pages/device/detail.vue:287", res);
try {
let packageTimeMinutes = 0;
if (selectedPkg.time.includes("小时")) {
@@ -120,12 +120,12 @@ const _sfc_main = {
packagePrice: parseFloat(selectedPkg.price)
});
if (updateRes.code !== 200) {
- common_vendor.index.__f__("warn", "at pages/device/detail.vue:303", "更新订单套餐信息失败:", updateRes.msg);
+ common_vendor.index.__f__("warn", "at pages/device/detail.vue:304", "更新订单套餐信息失败:", updateRes.msg);
} else {
- common_vendor.index.__f__("log", "at pages/device/detail.vue:306", "订单套餐信息已提前更新");
+ common_vendor.index.__f__("log", "at pages/device/detail.vue:307", "订单套餐信息已提前更新");
}
} catch (updateError) {
- common_vendor.index.__f__("error", "at pages/device/detail.vue:309", "更新订单套餐信息时出错:", updateError);
+ common_vendor.index.__f__("error", "at pages/device/detail.vue:310", "更新订单套餐信息时出错:", updateError);
}
const deposit = parseFloat(deviceInfo.value.depositAmount);
const packagePrice = parseFloat(selectedPkg.price);
@@ -134,7 +134,7 @@ const _sfc_main = {
common_vendor.index.redirectTo({
url: `/pages/order/payment?orderId=${order.orderId}&packageTimeHours=${selectedPkg.time.replace("小时", "")}&packagePrice=${selectedPkg.price}&totalAmount=${totalAmount}&depositAmount=${depositAmount.value}${deviceInfo.value && deviceInfo.value.feeConfig ? "&feeConfig=" + encodeURIComponent(deviceInfo.value.feeConfig) : ""}`
});
- } else if ("wx-score-pay") {
+ } else if (payWay == "wx-score-pay") {
common_vendor.index.hideLoading();
const res = await config_user.getOrderByOrderNoScore(order.orderNo);
common_vendor.index.hideLoading();
@@ -143,15 +143,31 @@ const _sfc_main = {
const payResult = await util_index.initiateWeChatScorePayment(res);
if (payResult.errCode == "0") {
const res2 = await config_user.getOrderByOrderNoScorePayStatus(order.orderNo);
- common_vendor.index.showToast({
- title: "设备租借成功",
- icon: "success"
- });
- setTimeout(() => {
- common_vendor.index.redirectTo({
- url: "/pages/order/index"
+ common_vendor.index.__f__("log", "at pages/device/detail.vue:340", res2.data.orderStatus);
+ if (res2.data.orderStatus == "in_used") {
+ common_vendor.index.showToast({
+ title: "设备租借成功",
+ icon: "success"
});
- }, 1500);
+ setTimeout(() => {
+ common_vendor.index.redirectTo({
+ url: "/pages/order/index"
+ });
+ }, 1500);
+ } else if (res2.data.orderStatus == "waiting_for_payment") {
+ common_vendor.index.showToast({
+ title: "设备租借失败,订单已取消",
+ icon: "error"
+ });
+ await config_user.cancelOrder({
+ orderId: order.orderNo
+ });
+ setTimeout(() => {
+ common_vendor.index.switchTab({
+ url: "/pages/index/index"
+ });
+ }, 1500);
+ }
}
} catch (payError) {
common_vendor.index.showToast({
diff --git a/unpackage/dist/dev/mp-weixin/pages/device/detail.wxss b/unpackage/dist/dev/mp-weixin/pages/device/detail.wxss
index 1610930..cd4ea48 100644
--- a/unpackage/dist/dev/mp-weixin/pages/device/detail.wxss
+++ b/unpackage/dist/dev/mp-weixin/pages/device/detail.wxss
@@ -26,7 +26,7 @@
.container.data-v-d65de3a7 {
min-height: 100vh;
background-color: #f5f7fa;
- padding: 30rpx 30rpx 240rpx;
+ padding: 30rpx 30rpx 300rpx;
box-sizing: border-box;
}
.device-header.data-v-d65de3a7 {
@@ -176,7 +176,7 @@
.pricing-card .pricing-rules .rule-item.data-v-d65de3a7 {
display: flex;
align-items: center;
- margin-bottom: 20rpx;
+ margin-bottom: 16rpx;
}
.pricing-card .pricing-rules .rule-item.data-v-d65de3a7:last-child {
margin-bottom: 0;
@@ -227,7 +227,7 @@
.notice-card .notice-items .notice-item.data-v-d65de3a7 {
display: flex;
align-items: flex-start;
- margin-bottom: 16rpx;
+ margin-bottom: 20rpx;
}
.notice-card .notice-items .notice-item.data-v-d65de3a7:last-child {
margin-bottom: 0;
diff --git a/unpackage/dist/dev/mp-weixin/pages/index/index.js b/unpackage/dist/dev/mp-weixin/pages/index/index.js
index 7b9f32e..d1fffd3 100644
--- a/unpackage/dist/dev/mp-weixin/pages/index/index.js
+++ b/unpackage/dist/dev/mp-weixin/pages/index/index.js
@@ -14,10 +14,10 @@ const _sfc_main = {
fail: reject
});
});
- common_vendor.index.__f__("log", "at pages/index/index.vue:125", scanResult.path);
+ common_vendor.index.__f__("log", "at pages/index/index.vue:131", scanResult.path);
let deviceNo = util_index.getQueryString(scanResult.path, "deviceNo");
- common_vendor.index.__f__("log", "at pages/index/index.vue:128", "扫码路径:", scanResult.path);
- common_vendor.index.__f__("log", "at pages/index/index.vue:129", "解析到的设备号:", deviceNo);
+ common_vendor.index.__f__("log", "at pages/index/index.vue:134", "扫码路径:", scanResult.path);
+ common_vendor.index.__f__("log", "at pages/index/index.vue:135", "解析到的设备号:", deviceNo);
if (!deviceNo) {
common_vendor.index.showToast({
title: "无效的设备二维码",
@@ -36,14 +36,14 @@ const _sfc_main = {
"Clientid": common_vendor.index.getStorageSync("client_id")
}
});
- common_vendor.index.__f__("log", "at pages/index/index.vue:154", "使用中订单检查结果:", JSON.stringify(inUseRes));
+ common_vendor.index.__f__("log", "at pages/index/index.vue:160", "使用中订单检查结果:", JSON.stringify(inUseRes));
if (inUseRes.statusCode == 200 && inUseRes.data.code == 200 && inUseRes.data.data) {
const inUseOrder = inUseRes.data.data;
- common_vendor.index.__f__("log", "at pages/index/index.vue:159", "检测到使用中订单,准备跳转:", inUseOrder);
+ common_vendor.index.__f__("log", "at pages/index/index.vue:165", "检测到使用中订单,准备跳转:", inUseOrder);
common_vendor.index.reLaunch({
url: `/pages/return/index?orderId=${inUseOrder.orderId}&deviceId=${deviceNo || inUseOrder.deviceNo}`
});
- common_vendor.index.__f__("log", "at pages/index/index.vue:165", "已发起页面跳转");
+ common_vendor.index.__f__("log", "at pages/index/index.vue:171", "已发起页面跳转");
return;
}
const orderRes = await common_vendor.index.request({
@@ -54,28 +54,28 @@ const _sfc_main = {
"Clientid": common_vendor.index.getStorageSync("client_id")
}
});
- common_vendor.index.__f__("log", "at pages/index/index.vue:179", "待支付订单检查结果:", JSON.stringify(orderRes));
+ common_vendor.index.__f__("log", "at pages/index/index.vue:185", "待支付订单检查结果:", JSON.stringify(orderRes));
if (orderRes.statusCode == 200 && orderRes.data.code == 200 && orderRes.data.data) {
const unpaidOrder = orderRes.data.data;
- common_vendor.index.__f__("log", "at pages/index/index.vue:184", "检测到待支付订单,准备跳转:", unpaidOrder);
+ common_vendor.index.__f__("log", "at pages/index/index.vue:190", "检测到待支付订单,准备跳转:", unpaidOrder);
common_vendor.index.navigateTo({
url: `/pages/order/payment?orderId=${unpaidOrder.orderId}`
});
} else {
- common_vendor.index.__f__("log", "at pages/index/index.vue:190", "无待支付订单,获取设备信息, deviceNo:", deviceNo);
+ common_vendor.index.__f__("log", "at pages/index/index.vue:196", "无待支付订单,获取设备信息, deviceNo:", deviceNo);
try {
const deviceInfoRes = await config_user.getDeviceInfo(deviceNo);
if (deviceInfoRes.code == 200 && deviceInfoRes.data && deviceInfoRes.data.device) {
const deviceInfo = deviceInfoRes.data.device;
if (deviceInfo.feeConfig) {
- common_vendor.index.__f__("log", "at pages/index/index.vue:201", "获取到设备feeConfig信息:", deviceInfo.feeConfig);
+ common_vendor.index.__f__("log", "at pages/index/index.vue:207", "获取到设备feeConfig信息:", deviceInfo.feeConfig);
try {
const feeConfig = JSON.parse(deviceInfo.feeConfig);
common_vendor.index.navigateTo({
url: `/pages/device/detail?deviceNo=${deviceNo}&feeConfig=${encodeURIComponent(deviceInfo.feeConfig)}`
});
} catch (e) {
- common_vendor.index.__f__("error", "at pages/index/index.vue:212", "解析feeConfig失败:", e);
+ common_vendor.index.__f__("error", "at pages/index/index.vue:218", "解析feeConfig失败:", e);
common_vendor.index.navigateTo({
url: `/pages/device/detail?deviceNo=${deviceNo}`
});
@@ -86,7 +86,7 @@ const _sfc_main = {
});
}
} else {
- common_vendor.index.__f__("error", "at pages/index/index.vue:226", "获取设备信息失败:", deviceInfoRes.msg || "未知错误");
+ common_vendor.index.__f__("error", "at pages/index/index.vue:232", "获取设备信息失败:", deviceInfoRes.msg || "未知错误");
common_vendor.index.showToast({
title: "获取设备信息失败",
icon: "none"
@@ -96,7 +96,7 @@ const _sfc_main = {
});
}
} catch (error) {
- common_vendor.index.__f__("error", "at pages/index/index.vue:238", "获取设备信息异常:", error);
+ common_vendor.index.__f__("error", "at pages/index/index.vue:244", "获取设备信息异常:", error);
common_vendor.index.showToast({
title: "获取设备信息失败",
icon: "none"
@@ -107,7 +107,7 @@ const _sfc_main = {
}
}
} catch (error) {
- common_vendor.index.__f__("error", "at pages/index/index.vue:251", "扫码处理失败:", error);
+ common_vendor.index.__f__("error", "at pages/index/index.vue:257", "扫码处理失败:", error);
common_vendor.index.showToast({
title: "扫码失败",
icon: "none"
diff --git a/unpackage/dist/dev/mp-weixin/pages/index/index.wxml b/unpackage/dist/dev/mp-weixin/pages/index/index.wxml
index 2365d72..d2b9c9c 100644
--- a/unpackage/dist/dev/mp-weixin/pages/index/index.wxml
+++ b/unpackage/dist/dev/mp-weixin/pages/index/index.wxml
@@ -1 +1 @@
-扫码使用扫描设备二维码即可使用或归还5.0元/小时15分钟内归还免费不足1小时按1小时计费封顶99元,计费达99元视为买断1扫码开锁2使用风扇3归还结算
\ No newline at end of file
+扫码使用扫描设备二维码即可使用或归还5.0元/小时15分钟内归还免费不足1小时按1小时计费封顶99元,计费达99元视为买断1扫码弹出2使用风扇3插入归还4结束订单
\ No newline at end of file
diff --git a/unpackage/dist/dev/mp-weixin/pages/index/index.wxss b/unpackage/dist/dev/mp-weixin/pages/index/index.wxss
index 8d04982..90979dd 100644
--- a/unpackage/dist/dev/mp-weixin/pages/index/index.wxss
+++ b/unpackage/dist/dev/mp-weixin/pages/index/index.wxss
@@ -129,7 +129,6 @@
/* 扫码区域 */
.scan-section.data-v-1cf27b2a {
padding: 0 30rpx;
- margin-top: -60rpx;
}
.scan-section .scan-card.data-v-1cf27b2a {
background: #ffffff;
diff --git a/unpackage/dist/dev/mp-weixin/pages/order/index.js b/unpackage/dist/dev/mp-weixin/pages/order/index.js
index 9b622ac..ed250aa 100644
--- a/unpackage/dist/dev/mp-weixin/pages/order/index.js
+++ b/unpackage/dist/dev/mp-weixin/pages/order/index.js
@@ -129,23 +129,6 @@ const _sfc_main = {
});
}
};
- const getOrderStatus = async (order) => {
- try {
- const res = await config_user.getOrderByOrderNoScorePayStatus(order.orderNo);
- if (res.code === 200) {
- common_vendor.index.showToast({
- title: "状态同步成功",
- icon: "success"
- });
- await loadOrderList(orderStatusTabs[currentTab.value].status);
- }
- } catch (error) {
- common_vendor.index.showToast({
- title: "同步状态失败",
- icon: "none"
- });
- }
- };
const navigateToReturn = (deviceId, orderId) => {
common_vendor.index.__f__("log", "at pages/order/index.vue:295", orderId);
common_vendor.index.navigateTo({
@@ -162,7 +145,7 @@ const _sfc_main = {
common_vendor.index.showLoading({
title: "处理中"
});
- const res = await config_user.confirmPaymentAndRent(order.orderId);
+ const res = await config_user.confirmPaymentAndRent(order.orderNo);
if (res.code === 200) {
common_vendor.index.hideLoading();
common_vendor.index.showToast({
@@ -192,15 +175,15 @@ const _sfc_main = {
title: "处理中"
});
const result = await config_user.cancelOrder({
- orderId: order.orderId
+ orderId: order.orderNo
});
- if (result.code === 200) {
+ if (result) {
common_vendor.index.hideLoading();
common_vendor.index.showToast({
title: "订单已取消",
icon: "success"
});
- await loadOrderList(orderStatusTabs[currentTab.value].status);
+ await loadOrderList();
} else {
throw new Error(result.msg || "取消订单失败");
}
@@ -254,11 +237,7 @@ const _sfc_main = {
o: common_vendor.o(($event) => navigateToReturn(order.deviceId, order.orderId), index)
} : {}, {
p: common_vendor.o(($event) => navigateToDetails(order), index),
- q: order.status === "waiting_for_payment" || order.orderStatus === "waiting_for_payment"
- }, order.status === "waiting_for_payment" || order.orderStatus === "waiting_for_payment" ? {
- r: common_vendor.o(($event) => getOrderStatus(order), index)
- } : {}, {
- s: index
+ q: index
});
})
});
diff --git a/unpackage/dist/dev/mp-weixin/pages/order/index.wxml b/unpackage/dist/dev/mp-weixin/pages/order/index.wxml
index 5824e18..f436a48 100644
--- a/unpackage/dist/dev/mp-weixin/pages/order/index.wxml
+++ b/unpackage/dist/dev/mp-weixin/pages/order/index.wxml
@@ -1 +1 @@
-{{tab.a}}暂无订单记录共享风扇设备号:{{order.d}}微信支付分|免押租借押金租借开始时间:{{order.g}}结束时间:{{order.h}}
\ No newline at end of file
+{{tab.a}}暂无订单记录共享风扇设备号:{{order.d}}微信支付分|免押租借押金租借开始时间:{{order.g}}结束时间:{{order.h}}
\ No newline at end of file
diff --git a/unpackage/dist/dev/mp-weixin/project.config.json b/unpackage/dist/dev/mp-weixin/project.config.json
index 45cea2d..135a311 100644
--- a/unpackage/dist/dev/mp-weixin/project.config.json
+++ b/unpackage/dist/dev/mp-weixin/project.config.json
@@ -13,7 +13,7 @@
},
"compileType": "miniprogram",
"libVersion": "",
- "appid": "wxe752f45e7f7aa271",
+ "appid": "wx2165f0be356ae7a9",
"projectname": "uni-fans-score",
"condition": {
"search": {
diff --git a/unpackage/dist/dev/mp-weixin/util/index.js b/unpackage/dist/dev/mp-weixin/util/index.js
index c32c3c7..0fbe1b6 100644
--- a/unpackage/dist/dev/mp-weixin/util/index.js
+++ b/unpackage/dist/dev/mp-weixin/util/index.js
@@ -10,7 +10,7 @@ const wxLogin = () => {
if (loginRes.code) {
const result = await config_user.login({
code: loginRes.code,
- appid: "wxe752f45e7f7aa271"
+ appid: "wx2165f0be356ae7a9"
});
if (result.code === 200) {
common_vendor.index.setStorageSync("token", result.data.LoginWxVo.access_token);
@@ -61,7 +61,6 @@ const initiateWeChatScorePayment = (paymentData) => {
package: paymentData.data.package
},
success: (businessRes) => {
- common_vendor.index.__f__("log", "at util/index.js:92", "微信支付分小程序调用成功", businessRes);
if (businessRes.errMsg === "openBusinessView:ok") {
resolve(businessRes);
} else {
@@ -69,7 +68,7 @@ const initiateWeChatScorePayment = (paymentData) => {
}
},
fail: (error) => {
- common_vendor.index.__f__("error", "at util/index.js:101", "微信支付分小程序调用失败", error);
+ common_vendor.index.__f__("error", "at util/index.js:100", "微信支付分小程序调用失败", error);
common_vendor.index.showToast({
title: error.errMsg || "支付分接口调用失败",
icon: "none"
diff --git a/unpackage/dist/dev/mp-weixin/utils/orderMonitor.js b/unpackage/dist/dev/mp-weixin/utils/orderMonitor.js
index d807f50..181ec23 100644
--- a/unpackage/dist/dev/mp-weixin/utils/orderMonitor.js
+++ b/unpackage/dist/dev/mp-weixin/utils/orderMonitor.js
@@ -97,11 +97,9 @@ class OrderMonitor {
if (this.currentPage === "return" || this.currentPage === null) {
await this.checkOrderStatus(orderId);
} else {
- common_vendor.index.__f__("log", "at utils/orderMonitor.js:122", `跳过订单状态检查: ${orderId}, 当前不在归还页面`);
}
}
} catch (error) {
- common_vendor.index.__f__("error", "at utils/orderMonitor.js:126", `检查订单状态失败: ${orderId}`, error);
}
}
}
diff --git a/util/index.js b/util/index.js
index 7f47bf2..02b7e64 100644
--- a/util/index.js
+++ b/util/index.js
@@ -16,7 +16,7 @@ export const wxLogin = () => {
// 2. 发送 code 到后端换取 token
const result = await login({
code: loginRes.code,
- appid: "wxe752f45e7f7aa271"
+ appid: "wx2165f0be356ae7a9"
})
if (result.code === 200) {
@@ -89,7 +89,6 @@ export const initiateWeChatScorePayment = (paymentData) => {
package: paymentData.data.package
},
success: (businessRes) => {
- console.log('微信支付分小程序调用成功', businessRes);
// 根据返回结果判断是否完成支付
if (businessRes.errMsg === 'openBusinessView:ok') {
resolve(businessRes);
diff --git a/utils/orderMonitor.js b/utils/orderMonitor.js
index f9e2723..9f7a17d 100644
--- a/utils/orderMonitor.js
+++ b/utils/orderMonitor.js
@@ -119,11 +119,11 @@ class OrderMonitor {
if (this.currentPage === 'return' || this.currentPage === null) {
await this.checkOrderStatus(orderId)
} else {
- console.log(`跳过订单状态检查: ${orderId}, 当前不在归还页面`)
+ // console.log(`跳过订单状态检查: ${orderId}, 当前不在归还页面`)
}
}
} catch (error) {
- console.error(`检查订单状态失败: ${orderId}`, error)
+ // console.error(`检查订单状态失败: ${orderId}`, error)
}
}
}