本仓库实现为 后端 REST API:基于 Spring Boot 完成门店主数据、交易流水与经营分析;数据落 MySQL,通过初始化脚本建库建表并写入角色、系统参数等基础数据。
行业场景
面向社区周边的小型宠物门店:兼营粮食用品等零售与洗护美容等服务,客流稳定、单据频繁,人员少、岗位交叉。经营上需要把会员、宠物、商品库存、服务项目与收银订单放在同一套数据里,才能减少差错并支撑简单复盘。
立项原因
门店若长期依赖纸质或零散表格,易出现会员与消费对不上、库存靠目测、服务与零售收入分账难汇总等问题;老板也难以快速判断“商品与服务谁贡献更大”。因此立项建设一套轻量的一体化后台,用统一模型覆盖日常开单与基础分析,降低管理成本。
拟解决问题
一是信息分散与不一致;二是商品与服务混合消费难以结构化记录;三是库存与低动销缺乏直观统计;四是营业额结构、会员贡献、时间趋势缺乏现成视图;五是岗位权限不清导致数据泄露或误操作风险。
主要功能
系统提供登录鉴权与基于角色的权限控制;维护员工用户及角色(如管理员、店员、老板)。会员侧支持建档及等级、积分、余额等字段;宠物档案与会员关联,记录品种、性别、生日、体重及健康信息等。商品模块维护分类、价格、库存、单位与供应商;服务模块维护项目分类、时长、价格与说明。订单以会员为维度,主单记录金额与支付、订单状态,明细可同时挂商品或服务行,支持一单混合结算。积分流水记录变动原因,便于核对。系统参数可配置门店信息与会员折扣系数、库存预警及提醒类开关等。报表与看板提供区间销售、库存价值与低库存、商品与服务销售拆分、会员消费统计与排行、商品/服务销售排行、日/月趋势及周期性经营看板,支撑门店日常管理与简要决策。
认证与安全
用户登录(JWT)、接口级权限控制,保障门店数据访问可控。
用户与角色
门店员工账号维护;角色划分(如系统管理员、店员、老板),支撑不同岗位的操作范围。
会员管理
会员建档与维护;支持会员等级、积分、储值余额等字段(与订单、积分流水联动,具体规则以实现为准)。
宠物档案
宠物与会员关联;记录种类、品种、性别、生日、体重、健康状况与健康记录摘要等,便于服务前核对与长期跟踪。
商品管理
商品信息、分类、单价、库存、单位、供应商及上下架状态等,为零售开单与库存统计提供基础数据。
服务项目管理
服务名称、分类、说明、时长、价格及状态维护,为服务类订单明细提供标准项。
订单管理
订单主表关联会员,记录总金额、支付状态、订单状态、支付方式与备注;订单明细支持关联 商品 或 服务项目,实现混合订单与金额汇总。
积分与流水
积分变动记录(含原因、备注等),与会员侧积分体系配合,便于对账与会员运营追溯。
系统参数
门店名称、地址、电话、营业时间、Logo 等展示类参数;会员折扣系数、库存预警与各类提醒开关等经营类参数(具体提醒是否全自动触发以实现为准,参数侧已预留配置项)。
报表与看板(老板/管理员为主,看板对店员开放)
销售报表:区间销售额、有效订单数、客单价、支付方式分布等。
库存报表:库存总价值、低库存商品、按分类库存汇总等。
经营分析:区间内商品销售额与服务销售额拆分等。
会员消费统计:会员消费汇总、均值、消费 TOP 等。
商品/服务销售排行。
日销售趋势、月销售趋势。
经营看板:按周期(如周)的概览数据,便于前台快速掌握经营态势。
完成 MySQL 表结构设计(用户与角色、会员与宠物、商品与服务、订单主从表、积分流水、系统参数等);编写 各业务模块接口(认证、用户/角色、会员、宠物、商品、服务项目、订单、系统参数);实现 订单创建与状态、支付相关 等业务逻辑;实现 多类经营报表与看板统计;接入 Spring Security + JWT 的无状态登录与接口鉴权;配置 跨域、统一返回体与全局异常处理;联调与缺陷修复。若为小组作业,把其中几条改写成你实际提交的模块即可。
技术栈
Java 8、Spring Boot 2.7(Web)、Spring Security(BCrypt、方法级 @PreAuthorize)、JWT(jjwt)、MyBatis-Plus、MySQL、Lombok、Hutool;构建工具 Maven。
架构
典型 三层结构:Controller 暴露 /api 接口;Service 承载业务规则;Mapper 访问数据库;entity/dto 分层传输;公共模块包含统一 Result、全局异常处理与安全过滤器。报表在服务层对订单、明细与主数据进行聚合计算后返回结构化 Map/List。
实现亮点
无会话 JWT 鉴权 + 角色权限分离,敏感报表仅管理员/老板可访问,看板对店员开放;订单明细 同一模型兼容商品行与服务行,便于混合收银与后续 商品/服务收入拆分分析;系统参数支持门店信息与折扣、预警等可配置项;CORS 支持通过环境变量配置允许来源,利于前后端分离部署。
难点
Spring Security 与 JWT 过滤器链、匿名放行与鉴权失败 JSON 返回的衔接;下单流程中 金额、库存扣减、会员积分/余额 等需保证事务与并发下的一致性;报表统计需按支付成功过滤并处理 跨多表汇总、空数据与边界时间;权限模型需在“好用”和“最小暴露面”之间取舍并贯穿各接口。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!

下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论