凌晨急诊场景:北上广深等一线城市宠物主人经常遇到半夜猫狗突然呕吐、喘气、抽搐,附近24h宠物医院排队至少1-2小时,打车+挂号+药费动辄800-2000元。平台需支持30秒内匹配三甲宠物医院背景的值班医生,图文/视频问诊后直接开电子处方,合作药房1小时内闪送(药品+输液到家总费用控制在150-400元),解决“半夜看不了宠物病”的核心痛点。
慢性病续方场景:中国目前超2000万慢性病宠物(肾衰、心衰、糖尿病等),主人每月跑医院开药+买处方粮平均花费1800-2800元,还要请假排队。平台需支持建立宠物电子病历、医生线上续方、处方药+处方粮一站式购买并支持订阅配送(月均费用可压到1200-1600元,比医院省30%-40%),实现慢性病家庭“省钱省时”的闭环。
一、活动模块(优惠券相关)
核心功能
优惠券活动管理:运营端增删改查、撤销,系统自动切换活动状态(生效 / 失效)。
优惠券全生命周期管理:含获取、可用查询、核销、发放(待发放 / 立即发放 / 自动发放)、自动过期。
用户抢券:活动生效后小程序抢券,成功后可在 “我的优惠券” 查看使用。
核心业务流程(抢券)
1.定时预热:xxl-job 同步待生效活动库存至 Redis。
2.用户抢券:Redis+Lua 脚本原子扣减库存,写入成功队列与同步队列。
3.异步同步:多线程消费同步队列,新增券记录、更新数据库库存后删队列。
技术亮点
1.Redis+Lua 脚本解决超卖,保障库存原子性,提升并发。
2.定时任务自动切换活动状态、优惠券过期,减少人工干预。
二、订单模块
核心功能
结算中心:计算商品总金额,联动优惠券服务核算实付金额(总金额 - 优惠金额)。
订单创建:设计订单表 / 详情表,支持优惠券核销,分布式锁防重复提交。
支付对接:对接独立支付服务,MQ 接收支付结果并更新订单状态。
订单取消:支持未支付手动取消、超时自动取消、已支付退款取消,配套取消 / 退款记录表。
核心业务流程
购物车选品→结算核价→提交订单→核销优惠券(seata 分布式事务)→获取支付 code→前端支付→MQ 通知结果→更新状态。
取消订单:未支付回退库存→超时(定时任务 + 懒加载)→已支付调用异步退款接口。
技术亮点
1.自研状态机统一管理订单状态,简化流转逻辑。
2.Redis incr 生成自增订单号,分布式锁防重复提交。
3.seata 保障事务一致性,MQ 实现支付结果异步通知。
1. 使用自研状态机优化订单状态管理
2. 在下单业务中分布式锁防止了订单的重复提交
3. 实现用Redis自增保证订单号唯一性
4. 使用Seate控制取消订单优惠券回退分布式事务
5. 使用MQ延迟消息加懒加载实现订单超时的自动取消
6. 使用定时任务XXL-JOB实现活动状态自动变更和已领取优惠券的自动过期
7. 使用缓存抢券的热点数据,提高访问效率
8. 使用了Redis加Lua脚本解决抢卷的超卖问题
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!

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