# 预约收银 **Repository Path**: Ahimu/appointment-cashier ## Basic Information - **Project Name**: 预约收银 - **Description**: 从零实战开发laravel预约收银系统以及微信小程序 部署上线 - **Primary Language**: PHP - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 12 - **Forks**: 5 - **Created**: 2025-07-25 - **Last Updated**: 2025-11-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 关注微信公众号:Laravel全栈实践 ![](./public/static/images/gzh-1.png) ![](./public/static/images/gzh-2.png) # 从零开发:微信小程序商户预约收银系统开源实战 现在各种各样的预约收银系统因为功能不完善,界面不友好,用户体验不佳。为了满足用户的需求,我们决定开发一个预约收银系统,解决商户端和用户端的预约问题。 并且免费提供给商户使用。 ## 技术栈: laravel12 Inertiajs Vue3 ArcoDesign Ui MySQL 开发微信原生小程序 AI助手 注释:原计划前后端分离, 但是由于一个人开发时间有限, 所以决定前后端不分离, 但是使用laravel+inertiajs+vue的方式 也是很优秀的一种方式。 ## 我们的收银系统将提供以下功能: 1. 用户端(小程序) - 用户认证: - 微信生态:支持微信一键快捷登录(基于微信开放平台OAuth2.0) - 手机号绑定:支持短信验证码登录/注册,已登录用户可补充绑定 - 游客模式:未登录状态下可浏览服务/技师信息,但预约需强制登录 - 安全机制:密码加密存储、登录状态管理、异常登录检测 - 服务展示: - 分类体系:支持多级分类(如美容→面部护理→补水套餐)、标签筛选(热门/新品/优惠) - 详情呈现: - 多媒体展示:服务主图+细节图+流程说明视频 - 核心信息:价格/时长/适用人群/注意事项 - 用户评价:评分分布+标签筛选评论+图片上传 - 技师展示: - 个人主页:照片/简介/擅长项目/服务次数/用户评分 - 可约时间:直接查看未来7天可预约时段 - 技能认证:展示专业资质证书/培训经历 - 门店信息: - 基础信息:地址/营业时间/联系方式/交通指引 - 环境展示:店内实景360°全景图 - 服务提示:停车信息/预约须知/疫情防控要求 - 预约核心: - 多级选择: - 服务选择:按分类/价格/时长多维度筛选 - 技师匹配:根据服务类型自动过滤可提供服务的技师 - 日期筛选:可视化展示未来7天可预约日历(标记节假日/满员日) - 时段选择:以30分钟为基础单位,展示技师实时可约状态(绿色可约/黄色紧张/红色已满) - 动态库存: - 容量控制:支持按服务类型设置时段最大预约人数(如按摩服务每时段限约3人) - 实时更新:预约成功后立即减少对应时段库存 - 技师状态:实时同步技师工作状态(空闲/服务中/休息/离线) - 超时释放:未支付订单15分钟后自动释放库存 - 冲突实时检测: - 规则引擎:检测服务时长与时段是否匹配、技师时间是否重叠 - 多级校验:前端即时提示+后端最终验证 - 智能推荐:冲突时自动推荐最近可约时段/替代技师 - 强制预约:管理员模式下允许覆盖冲突(需二次确认) - 订单管理: - 预约订单创建: - 信息采集:服务详情/技师/时间/人数/联系方式 - 特殊需求:支持文本备注(如偏好房间类型/禁忌要求) - 协议确认:展示服务条款/取消政策勾选框 - 价格明细:实时计算服务金额/优惠减免/最终支付金额 - 待支付订单管理: - 倒计时提醒:订单创建后显示15分钟支付倒计时 - 超时处理:未支付订单自动取消并释放库存 - 支付入口:支持小程序内直接调起微信支付 - 订单找回:提供「我的待支付」入口集中管理 - 订单列表与跟踪: - 状态分类:待支付/待履约/服务中/已完成/已取消/已退款 - 进度跟踪:展示当前订单所处环节及预计完成时间 - 操作功能:取消预约/申请退款/再次预约/评价服务 - 筛选搜索:支持按时间/服务类型/技师多维度筛选 - 支付集成: - 支付方式:支持微信支付(JSAPI支付/小程序支付) - 账户体系:支持余额预充值(赠送规则配置)+单次即时支付 - 优惠体系: - 优惠券:支持折扣券/满减券/体验券核销 - 会员折扣:根据会员等级自动计算折扣(如银卡95折/金卡9折) - 组合支付:支持余额+微信支付混合支付 - 交易安全:支付结果异步通知验证、订单金额二次校验、支付日志记录 - 消息触达系统: - 订阅消息: - 预约确认:成功预约后立即发送(含详情/取消方式) - 服务提醒:预约开始前1小时发送(含导航链接) - 状态变更:订单修改/取消时实时通知 - 营销通知:优惠活动/生日关怀(需用户授权) - 消息渠道: - 小程序订阅消息(强提醒) - 公众号模板消息(辅助触达) - 短信通知(关键操作备份通知) - 偏好设置:用户可在「我的设置」中开启/关闭特定类型通知 2. 商户端(PC管理后台 - Laravel12 + Vue3 + ArcoDesign) - 全局配置中心: - 门店管理: - 基础信息:名称/地址/联系方式/营业执照上传 - 多门店支持:连锁模式下可管理多家门店(独立库存/数据隔离) - 营业状态:支持临时停业设置及公告展示 - 时间规则: - 常规时段:设置工作日/周末不同营业时段 - 特殊日期:节假日/店休日批量设置 - 时段配置:各服务时段时长(30/60/90分钟可选) - 系统参数: - 预约规则:提前预约天数限制/最大同时预约数 - 支付设置:退款时效/手续费规则 - 提醒配置:各类型消息提前通知时间 - 服务管理系统: - 服务配置: - 基础信息:名称/描述/分类/价格/时长/主图 - 多媒体资料:支持多图上传/服务流程视频嵌入 - 服务属性:可设置是否需要技师/是否需要耗材/预约缓冲时间 - 技师关联: - 多对多关系:一个服务可关联多名技师 - 技能匹配:技师需具备对应技能标签才能提供服务 - 优先级设置:技师服务排序权重配置 - 库存管理: - 时段容量:按技师/服务类型单独设置可约人数 - 资源占用:自动计算服务所需房间/设备资源 - 超售设置:允许超额预约比例及审批流程 - 技师管理系统: - 人员档案: - 基础信息:照片/姓名/职称/联系方式/入职日期 - 资质管理:技能证书上传/审核/过期提醒 - 服务数据:服务次数/好评率/客户反馈统计 - 排班系统: - 多视图排班:日视图/周视图/月视图切换 - 排班模板:支持复制上周排班/批量设置 - 特殊状态:临时调休/请假/加班申请流程 - 技能体系: - 技能标签:多维度标签管理(如按摩→精油/推拿/SPA) - 等级设置:初级/中级/高级技师分级 - 服务定价:不同级别技师可设置差异化价格 - 预约管理: - 日历视图(按日/周/技师) - 订单操作:改签/取消/备注 - 冲突检测覆盖(后台强制修改时重算锁) - 收银台: - 快速创建预约订单: - 快捷入口:支持扫码/搜索手机号/会员卡号快速定位用户 - 服务选择:最近服务/热门服务一键添加 - 时间选择:可视化日历+时段拖拽选择 - 多人预约:支持同一时段添加多个服务项目 - 价格计算:自动计算总价/折扣/服务费并展示明细 - 多码合一核销: - 券码核销:支持优惠券/体验券/次卡二维码扫描 - 会员识别:会员码扫描自动关联用户账户 - 订单核销:预约订单二维码核验并更新状态 - 扫码记录:保留核销历史(时间/操作员/核销内容) - 高级收银功能: - 挂单管理:临时保存未完成订单,支持后续继续操作 - 拼单结算:多笔小单合并支付,支持分开打印小票 - 分账功能:支持技师/项目多维度分账比例设置 - 退款处理:原路退回/现金退款两种方式,支持部分退款 - 智能小票系统: - 模板定制:支持自定义小票抬头/ footer/ logo - 内容配置:可选择打印服务明细/技师信息/预约时间 - 打印控制:支持自动打印/手动触发/补打功能 - 多设备支持:连接蓝牙打印机/USB打印机/云打印机 - 会员管理系统: - 等级体系: - 成长规则:消费金额/次数/积分多重升级条件 - 特权配置:等级对应折扣/生日福利/专属服务 - 会员权益:储值赠送/积分倍率/免费项目次数 - 储值管理: - 充值方案:自定义充值金额及赠送规则 - 消费记录:详细流水查询与导出 - 退款规则:储值退款手续费及限制条件 - 积分系统: - 获取途径:消费/签到/推荐好友多场景积分 - 消耗方式:兑换服务/抵扣现金/礼品兑换 - 有效期管理:积分年度清零规则设置 - 营销工具: - 优惠券管理:生成/发放/核销全流程 - 套餐售卖:服务组合套餐设置 - 推荐有礼:老带新双方奖励机制 - 智能库存管理: - 耗材管理: - 分类体系:按服务类型/耗材属性分类管理 - 库存预警:低库存自动提醒/补货建议 - 采购管理:供应商对接/采购订单流程 - 关联配置: - 服务绑定:设置服务所需耗材及数量(如:面部护理需1片面膜) - 自动扣减:服务完成后自动减少对应耗材库存 - 损耗设置:允许配置合理损耗比例 - 统计分析: - 消耗报表:按服务/技师/时间段统计耗材使用 - 成本核算:耗材成本与服务收入对比分析 - 库存周转率:库存健康度评估指标 - 数据报表分析中心: - 营收分析: - 多维度统计:按时间(日/周/月/季)、服务类型、支付方式分析 - 趋势图表:营收走势图+环比/同比增长率计算 - 门店对比:多门店营收数据横向对比(连锁模式) - 明细查询:可钻取至具体订单/客户的消费记录 - 服务分析: - 热度排名:服务预约量TOP10/差评TOP5展示 - 转化漏斗:浏览→预约→支付→完成各环节转化率 - 价格敏感度:不同价位服务的预约转化率分析 - 季节性趋势:服务需求随时间变化的预测模型 - 技师绩效: - 接单数据:接单量/完成率/取消率/平均服务时长 - 评价分析:客户评分分布/关键词标签提取 - 创收能力:个人业绩/提成计算/同比增长 - 排班效率:实际服务时长vs排班时长利用率 - 用户洞察: - 画像分析:年龄/性别/地域/消费频次分布 - 行为路径:用户从浏览到复购的全流程追踪 - 留存分析:新老客户占比/复购周期计算 - 价值分层:基于RFM模型的客户价值等级划分 - 报表功能: - 自定义报表:支持选择维度/指标生成个性化报表 - 数据导出:Excel/PDF格式导出及定时发送 - 权限控制:不同角色查看不同级别数据 - 异常预警:营收突降/取消率异常等情况自动提醒 ## 效果图 ![img.png](./public/static/images/previews/admin-20250727-1.png) 后续更新 ## 开源地址: [https://gitee.com/Ahimu/appointment-cashier](https://gitee.com/Ahimu/appointment-cashier) ## 开发进度 后续更新 ## 预览地址 后续更新