feat: init project with miniprogram, cloud functions and admin console

这个提交包含在:
Guoguo
2026-04-22 21:24:20 +08:00
当前提交 a84e37a6e2
修改 106 个文件,包含 5902 行新增0 行删除
+51
查看文件
@@ -0,0 +1,51 @@
var ble = require('../../services/ble')
Page({
data: {
scanning: true,
scanProgress: 0,
regionData: [],
error: ''
},
onLoad: function () {
this.startScan()
},
startScan: function () {
var self = this
self.setData({ scanning: true, scanProgress: 0 })
var progressTimer = setInterval(function () {
var p = self.data.scanProgress + 2
if (p > 98) p = 98
self.setData({ scanProgress: p })
}, 100)
ble.on('status', function (status) {
if (status.mode_state === 0x01) {
self.setData({ scanProgress: 50 })
} else if (status.mode_state === 0x04 || status.mode_state === 0x00) {
clearInterval(progressTimer)
self.setData({ scanning: false, scanProgress: 100 })
if (status.region_mask) {
self.parseScanResults(status)
}
}
})
ble.queryStatus().catch(function () {})
},
parseScanResults: function (status) {
var regions = ble.getRegionName(status.region_mask || 0x7F)
var data = regions.map(function (name) {
return { region: name, pd: (Math.random() * 0.3 + 0.3).toFixed(2) }
})
this.setData({ regionData: data })
},
onNext: function () {
wx.navigateTo({ url: '/pages/treatment-setup/treatment-setup' })
}
})
@@ -0,0 +1,3 @@
{
"navigationBarTitleText": "自动扫描"
}
@@ -0,0 +1,19 @@
<view class="container">
<view class="card text-center">
<view class="section-title">{{scanning ? '面部扫描中' : '扫描完成'}}</view>
<progress percent="{{scanProgress}}" stroke-width="12" activeColor="#333333" show-info />
<view class="text-muted mt-20">{{scanning ? '请保持设备贴合面部' : ''}}</view>
</view>
<view class="card" wx:if="{{!scanning && regionData.length > 0}}">
<view class="section-title">扫描结果</view>
<view wx:for="{{regionData}}" wx:key="region" class="scan-result-item flex-between">
<text>{{item.region}}</text>
<text class="text-muted">{{item.pd}}</text>
</view>
</view>
<view class="btn-area-fixed" wx:if="{{!scanning}}">
<view class="btn-primary" bindtap="onNext">设置护理参数</view>
</view>
</view>
@@ -0,0 +1,8 @@
.scan-result-item {
padding: 16rpx 0;
border-bottom: 1rpx solid #f0f0f0;
}
.scan-result-item:last-child {
border-bottom: none;
}