diff --git a/README.md b/README.md new file mode 100644 index 0000000..24b82b0 --- /dev/null +++ b/README.md @@ -0,0 +1,4 @@ +1.该项目为创享微信小程序修改兼容支付宝小程序 +2.主要功能和微信小程序一样 用法差异在于地图的使用和蓝牙的调用方法 +3.重新封装了针对于支付宝小程序的蓝牙操作在utils/bluetooth.js文件中已经相关目录当中有关于支付宝小程序蓝牙的调用方法 + diff --git a/pages_admin/order/device_detail.vue b/pages_admin/order/device_detail.vue index d6786e8..40b8baa 100644 --- a/pages_admin/order/device_detail.vue +++ b/pages_admin/order/device_detail.vue @@ -850,23 +850,6 @@ export default { Binddevice() { console.log('Binddevice'); - - // 检查蓝牙状态 - // my.getBluetoothAdapterState({ - // success: (res) => { - // console.log('蓝牙状态:', res.available); - // if (!res.available) { - // this.maskepage = 5; - // this.buletxt = '请打开手机蓝牙'; - // return; - // } - - // }, - // fail: () => { - // this.maskepage = 5; - // this.buletxt = '获取蓝牙状态失败'; - // } - // }); // 初始化蓝牙模块并开始扫描 this.maskloading = true; diff --git a/pages_admin/worke/woke_deviceMgmt.vue b/pages_admin/worke/woke_deviceMgmt.vue index e57d1e6..b83faad 100644 --- a/pages_admin/worke/woke_deviceMgmt.vue +++ b/pages_admin/worke/woke_deviceMgmt.vue @@ -344,17 +344,17 @@ export default { }, getStatusColor(item) { if (item.status == 0 || item.status == 8) { - return '#808080'; // 下线和未上架状态为灰色 + return '#979797'; // 下线和未上架状态为灰色 } else if (item.status == 1) { - return '#28a745'; // 待租状态为绿色 + return '#4c97e7'; // 待租状态为绿色 } else if (item.status == 2) { - return '#ff8c00'; // 预约中状态为橙色 + return '#28c445'; // 预约中状态为橙色 } else if (item.status == 3) { - return '#007bff'; // 骑行中状态为蓝色 + return '#ffc757'; // 骑行中状态为蓝色 } else if (item.status == 4) { - return '#ffc107'; // 临时锁车中状态为黄色 + return '#ff7429'; // 临时锁车中状态为黄色 } else if (item.status == 6) { - return '#6f42c1'; // 调度中状态为紫色 + return '#986cf0'; // 调度中状态为紫色 } else if (item.status == 7) { return '#343a40'; // 未绑定状态为黑色 } diff --git a/pages_adminSet/modelMt.vue b/pages_adminSet/modelMt.vue index 95f857d..35a6f26 100644 --- a/pages_adminSet/modelMt.vue +++ b/pages_adminSet/modelMt.vue @@ -136,23 +136,23 @@ </view> </view> <u-mask :show="showpart" :z-index='100' @click="closepart()" /> - <view class="choose_part" v-if="showpart"> +<view class="choose_part" v-if="showpart"> <view class="tit"> 选择收费方式 - </view> - <view class="part_box"> - <view class="" v-for="(item, index) in Accessorylist" :key="index" @click="chooseAcc(item.ruleId)" - style="width: 100%; display: flex;margin-top: 10rpx;"> - <view class="part" :class="data.ruleIds.includes(item.ruleId) ? 'act' : ''"> - {{item.name}} - <image src="https://lxnapi.ccttiot.com/bike/img/static/uJNlGEGmN0F4AuPJmOZn" mode="aspectFit" - v-if="data.ruleIds.includes(item.ruleId)"> - </image> + <scroll-view class="part_box" scroll-y> + <view class="part_list"> + <view class="part_item" v-for="(item, index) in Accessorylist" :key="index" + @click="chooseAcc(item.ruleId)"> + <view class="part" :class="data.ruleIds.includes(item.ruleId) ? 'act' : ''"> + {{ item.name }} + <image src="https://lxnapi.ccttiot.com/bike/img/static/uJNlGEGmN0F4AuPJmOZn" mode="" + v-if="data.ruleIds.includes(item.ruleId)"> + </image> + </view> </view> </view> - - </view> + </scroll-view> <view class="btn" @click="subacc()"> 确定 </view> @@ -392,82 +392,91 @@ .page { .choose_part { - position: fixed; - top: 530rpx; - left: 54rpx; - z-index: 110; - width: 644rpx; - padding: 40rpx 48rpx; - background: #FFFFFF; - border-radius: 26rpx 26rpx 26rpx 26rpx; - - .part_box { - margin-top: 40rpx; - display: flex; - flex-wrap: wrap; - - .part:nth-child(3n) { - margin-right: 0; + position: fixed; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + z-index: 110; + width: 644rpx; + padding: 40rpx 48rpx; + background: #FFFFFF; + border-radius: 26rpx; + + .part_box { + margin-top: 40rpx; + max-height: 600rpx; + + .part_list { + display: flex; + flex-direction: column; + gap: 20rpx; + + .part_item { + width: 100%; + } + + .part { + position: relative; + display: flex; + align-items: center; + justify-content: center; + padding: 20rpx; + background: #F0F0F0; + border-radius: 12rpx; + border: 1rpx solid #F0F0F0; + font-size: 32rpx; + color: #3D3D3D; + transition: all 0.3s ease; + + image { + position: absolute; + right: 10rpx; + bottom: 10rpx; + width: 34rpx; + height: 34rpx; + } + + &.act { + background: #DCEDFF; + border: 1rpx solid #4297F3; + color: #4297F3; + } + + &:active { + opacity: 0.8; + } + } + } } - - .part { - margin-top: 10rpx; - position: relative; - margin-right: 36rpx; + + .tit { + width: 100%; + text-align: center; + font-weight: 600; + font-size: 36rpx; + color: #3D3D3D; + margin-bottom: 20rpx; + } + + .btn { + margin-top: 40rpx; + width: 100%; + height: 88rpx; + background: #4C97E7; + border-radius: 10rpx; + font-weight: 600; + font-size: 36rpx; + color: #FFFFFF; display: flex; align-items: center; justify-content: center; - // width: 160rpx; - // height: 60rpx; - padding: 10rpx 20rpx; - background: #F0F0F0; - border-radius: 6rpx 6rpx 6rpx 6rpx; - border: 1rpx solid #F0F0F0; - font-weight: 500; - font-size: 32rpx; - - color: #3D3D3D; - - image { - position: absolute; - right: 0; - bottom: 0; - width: 34rpx; - height: 34rpx; + + &:active { + opacity: 0.9; } } - - .act { - background: #DCEDFF; - border: 1rpx solid #4297F3; - color: #4297F3; - } } - .tit { - width: 100%; - text-align: center; - font-weight: 600; - font-size: 36rpx; - color: #3D3D3D; - } - - .btn { - margin-top: 60rpx; - display: flex; - align-items: center; - justify-content: center; - width: 552rpx; - height: 88rpx; - background: #4C97E7; - border-radius: 10rpx 10rpx 10rpx 10rpx; - font-weight: 600; - font-size: 36rpx; - color: #FFFFFF; - } - } - - .btn_box { position: fixed; width: 750rpx;