1. 立项背景与目标
背景: 传统二手手机回收行业存在交易链条长、价格不透明、跨地域流通难、资金结算不安全等问题。门店缺乏高效的出货渠道,回收商则难以稳定获取优质货源。
目标: 打造一个“无忧换换”品牌下的线上交易平台,以平台质检和担保交易为核心,为Tob(门店对回收商)业务提供标准化服务;同时为Toc(门店对个人)业务提供信息发布与撮合平台,最终成为该细分领域的领先服务商,并从中收取交易服务费。
2. 软件功能与核心模块
平台两端:
微信小程序(C端/门店端): 供线下手机店主使用,核心功能包括手机发布、在线询价、订单管理、资金提现、物流追踪等。
Web管理后台(B端/运营端): 供平台运营人员、质检师、财务人员使用,实现全业务流程的管控与数据分析。
六大核心功能模块:
用户与权限中心: 基于RBAC模型,实现门店用户、回收商用户、平台运营、质检师、财务等多角色管理,以及细粒度的菜单、按钮级权限控制。
商品与品类中心: 管理手机品牌、型号、SKU属性库,支持动态商品属性配置,为标准化质检和报价提供数据基础。
交易流程中心(核心):
Tob模式(平台担保): 门店发起回收 -> 平台质检师上门验机并录入报告 -> 回收商基于报告竞价 -> 门店选择成交 -> 平台担保资金,同步呼叫顺丰上门取件 -> 收货确认后,平台放款给门店。
Toc模式(信息撮合): 门店自行发布手机信息 -> 回收商直接报价 -> 双方线下沟通成交。
财务资金中心: 集成支付宝、连连支付,实现用户充值、平台担保、交易结算、利润抽成、提现审核等全流程资金闭环。采用中间账户(托管账户) 模式保障交易安全。
客户与运营管理: 管理门店及回收商资料,处理询价单、报价单、回收单的全生命周期状态追踪。
数据统计看板: 可视化呈现核心业务指标,如回收商出价活跃度统计、门店成交金额排名、平台每日交易流水及服务费收入等,为运营决策提供数据支持。
3. 核心业务流程(Tob担保交易)
门店小程序发布回收需求 -> 运营后台分配质检师任务 -> 质检师上门填写电子质检报告 -> 报告同步至平台,触发回收商竞价(小程序/通知) -> 门店在报价列表中选择成交方 -> 系统冻结回收商货款至中间账户,并生成带顺丰物流单的订单 -> 门店发货,回收商收货确认 -> 系统解冻货款,分别结算给门店(货款-服务费)和平台(服务费)-> 交易完成。
1. 整体架构与设计思路
技术栈:
后端: Spring Boot + Spring Cloud (Nacos, OpenFeign) 微服务架构,MyBatis-Plus, MySQL (主从读写分离), Redis (缓存/会话), RabbitMQ (异步解耦,如物流下单、消息通知)。
部署: 所有服务使用Docker容器化,通过Jenkins CI/CD在Linux服务器上进行自动化部署。
前端: 管理后台使用Vue 3 + Element Plus;微信小程序使用Uni-app,实现跨端开发。
第三方服务集成: 支付宝/连连支付SDK、顺丰开放平台API、阿里云短信服务。
设计思路: 采用前后端分离、微服务化设计,将业务拆分为用户服务、商品服务、交易服务、订单服务、支付服务、消息服务等。强调高内聚低耦合,以应对复杂多变的二手手机交易业务场景。
2. 负责模块
负责模块:作为后端核心开发工程师,我主要负责交易服务、支付服务及财务资金中心的设计与实现。
设计并实现了完整的担保交易状态机: 定义了从待质检到交易完成等12个核心状态,覆盖所有异常分支(如退货、争议),确保了交易流程的严谨性与数据一致性。
独立完成支付模块与两家第三方支付渠道的对接: 设计统一的支付网关抽象层,封装了支付宝、连连支付的差异化接口。实现了充值、担保支付、分账、提现等所有资金操作接口。
实现资金安全方案: 通过“中间账户”思想,所有交易资金均经由平台虚拟账户过渡。我负责设计了资金流水表,实现每一笔资金变动的双向记账(如:回收商账户-1000,平台中间账户+1000),保证了资金数据的可审计、可追溯。上线后,平台累计处理资金流水超过5000万元,未出现任何资损事故。
核心接口开发与性能优化: 负责竞价列表查询、订单详情等高频接口开发。通过Redis缓存商品品类信息、竞价摘要,将核心接口平均响应时间从200ms降低至50ms以下。
3. 遇到的难点、坑与解决方案
难点一:分布式事务下的资金一致性
场景: 支付宝/连连支付在支付成功后会异步回调我们的接口,可能存在网络重试导致多次回调。
坑:若不处理幂等,可能导致用户充值多次或订单重复结算。
解决方案: 在回调入口处,首先以支付渠道返回的唯一交易流水号作为键,在Redis进行setnx锁操作。获得锁后,再查询本地数据库是否已处理过该流水号,确保业务逻辑的幂等性。等性