一条完整的业务链,而不是几个孤立页面
采购、销售、库存、结算、统计共用同一套库存流水,任何一步都能向前追溯。
采购进货
多行明细、折让与采购退货;草稿可改,过账后按移动加权平均重算成本,作废走反向流水。
前台收银
书名/ISBN 检索加购,会员折扣自动计算,五种支付方式;收款即扣库存、结转成本,小票可打印、可整单退货。
库存与盘点
库存变动全部落在流水上,可查每一笔的来源单据与结存;盘点按分类建单,差异自动生成盘盈/盘亏。
日清月结
日结自动汇总期初、入库、出库、期末与当日盈亏;月结在上月期末基础上汇总,账实可核对。
经营统计
进货按供应商/图书/分类/月份,出货按图书/分类/收银员/月份/支付,另有品类毛利与畅销榜。
权限与留痕
四个角色、12 个权限码,菜单由后端下发、接口二次校验;登录、开单、过账、结账、备份全部写日志。
一套后端,三种终端
网页、手机、小程序调的是同一批接口——权限、校验、事务都在服务端,前端只负责展示。
Web 管理端
店长与库管的完整工作台:图书档案、进货、收银、库存盘点、日清月结、报表、权限。
static/index.html
手机 H5
同一套接口复刻,浏览器打开即用,扫码就能开单,不需要安装 App、也不用审核。
/mp/
微信小程序
原生 WXML:登录、看板、收银、库存、单据、进货、我的;登录换 Token,接口一行没改。
miniprogram/



手机端不是"能用",而是能干活
- 页面底部五个 tab:经营、收银、库存、单据、更多
- 档案类支持增删改,表格在小屏转卡片
- 单据可看明细、可作废、可整单退货
- 结算条避让 tabBar,不会挡住退不出去
- 模块页一律带返回键,有栈弹栈、无栈回首页
看得见的库存与账目
以下为系统实际运行截图,数据来自 2026 年 7 月至今的连续演示经营。




一天的业务,五个动作走完
补货、入库、开单、盘点、日结——每一步都在同一套库存流水上留下记录。
轻量、可讲清楚的一套栈
前端零依赖,后端按业务域拆分,数据库把库存流水当作唯一事实表。
库存写入只有一条路:不管从进货单、收银单还是盘点单进来,写流水、改 books.stock、重算加权成本都在同一个函数里完成,并用行锁保证不超卖。
账要对得上,错了要查得到
关键数字不是靠人盯,而是靠校验脚本和测试守住:每次改完数据,五项守恒全部重跑一遍。
lllll.cloud
Let's Encrypt 证书至 2027-01
HTTP 301 跳 HTTPS
数据库仅监听 127.0.0.1
每日 02:30 自动备份
systemd 守护 + 健康检查
四个角色,权限各不相同
用不同工号登录,能看到菜单的差别;直接拼接口也会被服务端拦下。
| 工号 | 角色 | 可用范围 | 口令 |
|---|---|---|---|
001 | 店长 | 全部功能 | 123456 |
002 | 收银员 | 收银、销售单据、会员 | 123456 |
003 | 库管员 | 图书、进货、库存、盘点 | 123456 |
004 | 采购员 | 供应商、进货单、进货统计 | 123456 |
从哪里进
四个入口都在同一台服务器上,走同一张证书。
| 入口 | 地址 | 内容 |
|---|---|---|
| Web 系统 | /app/ | 22 页管理端 |
| 手机 H5 | /mp/ | 22 个模块 |
| 展示页 | /doc | 作业要求与实现说明 |
| 介绍页 | / | 就是当前这页 |