触屏收银的交互密码:从44px到3秒出单
触屏收银的交互密码:从44px到3秒出单
新来的收银员小李,第一天上班。
老板给了她一本菜单,上面密密麻麻写着30多道菜的价格。
小李看了半天,问:“能不能不背?”
老板笑了:“用龙讯POS,不用背。”
01 从3天到30分钟
传统收银培训,新员工要背3天价格表。龙讯POS的培训,30分钟就能上手。
为什么?因为不需要记价格。菜品按分类排列在屏幕上,每个卡片直接显示价格,点一下就加入购物车,价格自动累加。收银员只需要"看"和"点",不需要"记"和"算"。
02 触屏上的"魔法数字":44px
苹果的人机界面指南建议:最小触控区域44×44像素。餐饮收银的场景更极端——收银员可能手上沾着油、水、面粉,手指精度远不如平时。
龙讯POS严格遵守这个规则:菜品卡片≥44px高、+/-按钮44×44px、分类按钮≥44px高、所有操作按钮≥44px高。
大按钮 = 不点错 = 不出错。
03 点单:3秒完成
- 选分类:右侧分类导航,点击即切换
- 点菜品:点击自动加入购物车,价格累加
- 选规格:有规格的菜品自动弹出选择窗口
- 加配菜:按分组标签页切换(素菜/加肉/丸子),不用滚动
- 加备注:同组单选互斥(辣度),不同组可多选(辣度+香菜)
- 看合计:购物车实时显示
从选分类到点完一单,3秒。
04 技术实现:MVVM + 源生成器
CommunityToolkit.Mvvm 减少样板代码
public partial class PaymentViewModel : ObservableObject
{
[ObservableProperty]
private bool _isCashPayment = true;
[RelayCommand]
private async Task ConfirmPaymentAsync() { /* ... */ }
}
[ObservableProperty] 自动生成属性和变更通知,[RelayCommand] 自动生成命令属性。代码量减少约60%。
三种支付模式状态机
现金支付 ↔ 扫码支付 ↔ 混合支付,三种模式互斥切换。通过 OnXxxChanged 分部方法实现联动。
扫码支付轮询机制
被扫支付(B扫C)需要轮询确认支付状态:每5秒查询一次,最多12次(共60秒)。超时后自动取消。
渠道自动识别
微信付款码:18位纯数字,前缀1015。支付宝:纯数字,前缀2530。银联:16位以上纯数字,前缀62。扫码枪扫入后自动识别渠道,无需手动选择。
混合支付
四个固定渠道(微信/支付宝/银联/现金),各行金额之和必须等于订单总额。RecalcMixed() 实时计算剩余金额。
05 现金收银:不需要键盘
快捷金额(¥10/¥20/¥50/¥100/刚好)+ 累加按钮(+5/+10/+20/+50/+100),整个支付过程手指不需要离开触屏。
06 挂单/取单
高峰期最多同时挂20单。点"挂单"暂存购物车,点"取单"恢复。
07 停售菜品:灰色卡片
管理后台设为"停售"后,收银台立刻变灰色半透明 + "已停售"标签。收银员不需要记住哪些菜卖完了。
08 总结
3秒点完一单,不是因为收银员手快,而是系统替你记了价格、替你算了金额、替你选了规格。收银员只需要做一件事:看屏幕,点按钮。
这就是触屏收银的设计哲学——让机器做计算,让人做判断。
下期预告:《支付三渠归一:策略模式在收银系统中的实战》