113 lines
5.7 KiB
Plaintext
113 lines
5.7 KiB
Plaintext
<view class="userManagement">
|
||
<!-- 顶部固定区 -->
|
||
<view class="header">
|
||
<!-- 设备卡片 -->
|
||
<view class="device-card">
|
||
<view class="device-icon">
|
||
<image src="/images/device/{{ device.name }}.png" mode="aspectFit"/>
|
||
</view>
|
||
<view class="device-info">
|
||
<view class="device-name-row">
|
||
<view class="device-name">{{ device.name }}</view>
|
||
<view class="device-status">
|
||
<view class="device-status_ {{ device.status ? 'connected' : '' }}">
|
||
<view class="status-dot"></view>
|
||
<view class="status-text">{{ device.status ? '已连接' : '未连接' }}</view>
|
||
</view>
|
||
</view>
|
||
</view>
|
||
<view class="device-meta" style="margin-bottom: 20rpx">设备ID:{{ device.deviceId }}</view>
|
||
<view class="device-meta">设备SN:{{ device.sn }}</view>
|
||
</view>
|
||
</view>
|
||
|
||
<!-- 已录入用户 + 同步按钮 -->
|
||
<view class="section-header">
|
||
<view class="section-title" bind:longpress="onLongPressSectionTitle">已录入用户({{ memberCount }}/10)</view>
|
||
<view class="sync-btn" bind:tap="onTapSync">同步用户至设备</view>
|
||
</view>
|
||
|
||
<!-- 同步提示 -->
|
||
<view class="sync-tip">当前用户信息未同步至设备,请在连接设备的状态下,点击同步按钮完成信息同步</view>
|
||
</view>
|
||
|
||
<!-- 用户列表滚动区 -->
|
||
<view class="body">
|
||
<scroll-view scroll-y class="scrollView" wx:if="{{ hasData }}">
|
||
<view class="scrollViewContent">
|
||
<!-- 本人 -->
|
||
<block wx:if="{{ self }}">
|
||
<view class="member-card">
|
||
<view class="member-top">
|
||
<view class="member-avatar">
|
||
<image src="{{ self.gender === '女' ? '/images/woman.png' : '/images/man.png' }}" mode="aspectFit" />
|
||
</view>
|
||
<view class="member-info">
|
||
<view class="member-name-row">
|
||
<view class="member-name">{{ self.name }}</view>
|
||
<view class="member-type-tag member-type-tag--self">本人</view>
|
||
</view>
|
||
<view class="member-sub">{{ self.gender }}·{{ self.age }}岁 丨 {{ self.height }}cm</view>
|
||
</view>
|
||
<view class="member-sync member-sync--{{ self.syncClass }}">
|
||
<view></view>
|
||
<view>{{ self.sync }}</view>
|
||
</view>
|
||
</view>
|
||
<view class="member-divider"></view>
|
||
<view class="member-ops">
|
||
<view class="op-delete" bind:tap="onTapDelete" data-item="{{ self }}">删除</view>
|
||
</view>
|
||
</view>
|
||
</block>
|
||
|
||
<!-- 分组 -->
|
||
<block wx:for="{{ groups }}" wx:key="title" wx:for-item="group">
|
||
<view class="group-title">{{ group.title }}</view>
|
||
<block wx:for="{{ group.members }}" wx:key="id" wx:for-item="member">
|
||
<view class="member-card">
|
||
<view class="member-top">
|
||
<view class="member-avatar {{ member.gender === '女' ? 'member-avatar--female' : 'member-avatar--male' }}"><image src="{{ member.gender === '女' ? '/images/woman.png' : '/images/man.png' }}" mode="aspectFit" /></view>
|
||
<view class="member-info">
|
||
<view class="member-name-row">
|
||
<view class="member-name">{{ member.name }} <text>(他人添加)</text></view>
|
||
</view>
|
||
<view class="member-sub">{{ member.gender }}·{{ member.age }}岁 丨 {{ member.height }}cm</view>
|
||
</view>
|
||
<view class="member-sync member-sync--{{ member.syncClass }}">
|
||
<view></view>
|
||
<view>{{ member.sync }}</view>
|
||
</view>
|
||
</view>
|
||
<view class="member-divider"></view>
|
||
<view class="member-ops">
|
||
<view class="op-edit" bind:tap="onTapEdit" data-item="{{ member }}">编辑</view>
|
||
<view class="op-delete" bind:tap="onTapDelete" data-item="{{ member }}">删除</view>
|
||
</view>
|
||
</view>
|
||
</block>
|
||
</block>
|
||
</view>
|
||
</scroll-view>
|
||
<view class="empty-state" wx:else>
|
||
<image class="empty-img" src="/images/emptyData.png" mode="aspectFit" />
|
||
<view class="empty-text">暂无用户\n请添加用户以使用设备测量</view>
|
||
</view>
|
||
</view>
|
||
|
||
|
||
<!-- 底部常驻添加用户按钮 -->
|
||
<view class="footer">
|
||
<block wx:if="{{ self }}">
|
||
<view class="btn-primary" bind:tap="onTapAddUser">添加用户(最多10位)</view>
|
||
</block>
|
||
<block wx:else>
|
||
<view class="btn-primary" bind:tap="onTapAddSelf">一键添加本人</view>
|
||
<view class="btn-cancel" bind:tap="onTapAddNew">添加新用户</view>
|
||
</block>
|
||
</view>
|
||
|
||
<!-- 同步进度弹框 -->
|
||
<user-management-sync show="{{ syncShow }}" percent="{{ syncPercent }}" status="{{ syncStatus }}" />
|
||
</view>
|