项目概览
| 项目 | 内容 |
|---|
| 行业 | 保健食品 / 大健康 |
| 项目类型 | 微信小程序 + H5 双端电商商城 |
| 上线状态 | 已正式上线运行,面向微信用户提供服务 |
| 运行环境 | 微信小程序正式版 + H5 网页端 |
| 开发周期 | 需求分析 → 设计 → 开发 → 测试 → 上线,全流程交付 |
项目背景
客户主营保健食品领域,品牌旗下拥有多品类健康产品,亟需搭建一个线上电商平台以拓展销售渠道。
核心需求包括:
- 品牌线上化 — 将传统线下销售模式迁移至微信小程序,降低获客门槛
- 微信生态打通 — 实现微信一键授权登录、微信支付无缝集成,提升用户转化率
- 会员精细化运营 — 建立会员积分体系和分销推广机制,驱动用户复购与裂变增长
- 高效后台管理 — 提供商品、订单、会员、营销、权限等一站式管理能力
- 跨端覆盖 — 一套代码同时支持微信小程序和 H5 网页,扩大触达面
系统功能架构
微信小程序端 / H5 端(用户侧)
| 模块 | 功能说明 |
|---|
| 首页 | 品牌形象展示、Banner 轮播(3s 自动播放)、中间广告位动态加载、商品分组展示(单品区 / 组合套餐区,支持二级子分组)、顶部搜索栏(300ms 防抖 + 关键词高亮)、二维码推广弹窗 |
| 商品分类 | 左右两栏布局:左侧垂直分类导航(选中态渐变背景)、右侧商品列表、子分类浮层面板、异步搜索补全、支持 URL 参数直接跳转指定分类 |
| 商品详情 | 顶部多图轮播、商品名称/属性/价格展示、U+Parse 富文本渲染商品详情、底部固定操作栏(购物车角标 + 加入购物车 + 立即购买)、数量选择浮层面板、购买前授权引导 |
| 购物车 | 顶部品质保障标语栏、uView 多选/全选商品、数量选择器、金额实时计算、红色渐变”立即下单”按钮、空状态提示、删除功能 |
| 下单支付 | 收货地址管理(快递配送/网点自提)、商品数量调整、订单备注(150字以内)、微信支付集成、订单提交校验、支付引导 |
| 订单管理 | 6 个状态 Tab(全部/待付款/待发货/待收货/已收货/已退款)、状态标签彩色区分、底部操作按钮动态显示(去付款/确认收货/查看详情)、触底分页加载、空状态提示 |
| 个人中心 | 渐变背景用户信息头部(头像/昵称/手机号)、积分/分销信息展示、”我的订单”快捷入口(5 类状态)、收货地址、推广分享(二维码)、积分兑换、积分记录、推荐会员、消息通知、客服功能 |
| 会员体系 | 微信一键授权登录(chooseAvatar + getPhoneNumber)、H5 手机号+验证码登录、自动注册、4 小时缓存过期机制 |
| 积分系统 | 购物送积分、积分兑换商品、积分抵扣、积分记录查询、积分兑换记录 |
| 分销推广 | 会员推荐关系链(URL 参数 + 微信 scene 场景值传递推荐人)、佣金结算、提现申请、推荐会员列表 |
| 消息通知 | 系统公告列表与详情、未读消息角标提醒 |
| 个人信息授权 | 弹窗引导授权微信昵称/头像/手机号,授权后缓存;支持取消绑定后重新引导 |
后台管理系统(商户侧)
| 模块 | 功能说明 |
|---|
| 商品管理 | 多级树形分类管理、商品上下架、商品图片管理(列表图/轮播图/详情图)、库存管理、单品/套餐商品类型支持 |
| 订单管理 | 订单处理(待付款/待发货/待收货/待评价/已完成)、发货管理、物流追踪、退款处理 |
| 会员管理 | 会员信息管理、会员等级、积分管理、会员行为追踪 |
| 分销管理 | 分销规则配置、佣金自动结算、提现申请审核 |
| 营销管理 | 优惠券管理、促销活动配置 |
| 内容管理 | Banner 广告管理、公告发布、中间广告位管理 |
| 系统管理 | RBAC 权限管理(角色/权限/用户)、系统参数配置、操作日志 |
| 数据管理 | 积分记录、结算记录、操作记录查询 |
| 辅助工具 | 代码生成器(快速生成标准 CRUD)、多文件上传、编辑器内容管理 |
页面交互与 UI 设计亮点
系统在用户体验方面做了精细打磨,以下是一些值得关注的细节:
首页
- 品牌化视觉:整体以绿色
#3DBB8F 为主题色,贯穿导航栏、按钮、状态标签,塑造健康自然的品牌调性
- 智能搜索:搜索框支持 300ms 防抖,下拉候选结果中匹配关键词以绿色粗体高亮显示,降低用户筛选成本
- 动态商品分组:商品按”单品区域”和”组合套餐”分组展示,套餐组支持二级子分类;每组标题栏使用
linear-gradient 渐变色 + 装饰性半圆元素,提升视觉层次感
- 商品卡片:两列网格布局,白色卡片 + 圆角 + 轻微阴影,促销价红色醒目,原价灰色划线,购买按钮采用圆角标签样式
购物车
- 品质保障:顶部三条保障标语(”100%品质保证”、”所有商品精挑细选”、”售后无忧”),每条前带绿色对勾,增强用户信任
- 全选/反选:精细的全选逻辑实现,通过
isCheckAllVal() 实时判断全选状态
- 数量选择:采用 uView NumberBox 组件,加减操作流畅
- 结算栏:固定在底部,全选复选框 + 已选数量 + 总价金额 + 积分显示 + 红色渐变下单按钮
商品详情
- 底部操作栏:购物车图标带红色圆形角标(超 99 显示 “99+”),”加入购物车”(黄色)和”立即购买”(粉色)按钮采用左右拼接造型,中间无缝衔接
- 数量选择浮层:上圆角(
border-radius: 30rpx 30rpx 0 0)白色底部浮层,展示商品图片 + 名称 + 会员价 + 数量选择器
个人中心
- 渐变头部:使用
linear-gradient(180deg, #c4dfe6, #e5edef) 渐变背景,区别于首页的绿色调,形成页面差异化视觉
- 半透明卡片:各功能模块采用
opacity: 0.8 + border-radius: 25rpx 的半透明白色卡片,层次分明
订单列表
- 吸顶 Tab 栏:6 个状态 Tab 使用
position: sticky 吸顶效果,选中态绿色粗体放大
- 五色状态标签:待付款-橙底、待发货-蓝底、待收货-绿底、已收货-灰底、已退款-红底,状态一目了然
- 动态操作按钮:根据订单状态自动切换”去付款”(橙色)/ “确认收货”(绿色)/ “查看详情”(白色边框)
技术方案
| 层级 | 技术选型 |
|---|
| 后端框架 | ThinkPHP 5.0.24(PHP 7.2) |
| 前端小程序/H5 | UniApp(Vue.js,一套代码多端发布) |
| UI 组件库 | uView UI 2.x(基于 uni_modules) |
| 后台管理 | Bootstrap + jQuery |
| 数据库 | MariaDB(MySQL 兼容) |
| 支付集成 | 微信支付(JSAPI) |
| 认证鉴权 | JWT Token + 微信 Code2Session |
| 权限模型 | RBAC(基于角色的访问控制) |
| 缓存机制 | 客户端 Storage 缓存 + 服务端缓存(4 小时过期策略) |
| 数据安全 | SQL 注入防护、XSS 防护、CSRF 验证、密码加密存储 |
前端核心依赖
| 组件/库 | 用途 |
|---|
| uView UI 2.x | 核心 UI 组件库(u-icon / u-search / u-tabs / u-popup / u-parse / u-number-box / u-checkbox 等) |
| wxRequest.js | 基于 uni.request 的统一 HTTP 请求封装 |
| pageMix.js | Vue Mixin 封装分页复用逻辑(触底加载 / 分页重置) |
| SCSS | 全局样式变量管理、CSS Mixin 复用 |
| 条件编译 | UniApp 条件编译实现 H5 / 微信小程序差异化处理 |
环境配置
系统支持三套独立运行环境,通过配置文件一键切换:
- 开发环境:本地调试,接口直连本地服务器
- 体验/测试环境:部署至测试服务器,配合微信小程序体验版使用
- 生产环境:正式上线,全量面向用户
数据库设计
系统共计 43 张数据表,涵盖以下核心领域:
| 领域 | 表数量 | 说明 |
|---|
| 用户权限 | 7 张 | 用户、角色、权限、用户组织关联 |
| 会员体系 | 8 张 | 会员信息、收货地址、积分记录、等级记录、优惠券 |
| 商品 | 3 张 | 商品信息、商品图片、分类树 |
| 订单 | 5 张 | 订单主表、订单商品明细、订单记录、购物车 |
| 支付 | 3 张 | 微信支付、支付记录、微信订单号 |
| 提现 | 2 张 | 提现申请、提现记录 |
| 系统 | 15 张 | 系统配置、公告、文件管理、物流、促销、结算等 |
核心数据关系
- 会员与订单:一对多(一个会员可以有多个订单)
- 订单与订单商品:一对多(一个订单可包含多个商品)
- 商品与商品图片:一对多(一个商品可有多张图片)
- 分类与商品:一对多(一个分类下可包含多个商品)
- 用户与角色:多对多(通过用户角色关联表)
- 角色与权限:多对多(通过角色权限关联表)
核心业务流程
商品购买流程
用户浏览商品 → 加入购物车 → 选择收货地址 → 确认订单 → 微信支付 → 商家发货 → 确认收货 → 评价
订单状态流转:
待付款 → 待发货 → 待收货 → 待评价 → 已完成
↘ 已取消
↘ 已退款
分销裂变流程
会员A分享推广二维码 → 会员B扫码注册 → 会员B下单消费
→ 系统自动计算佣金 → 佣金计入A账户 → A申请提现 → 审核打款
会员积分流程
会员购物 → 获得积分 → 积分累计 → 积分兑换商品 / 抵扣现金 → 积分记录可查
微信登录流程
小程序端 wx.login() → 获取 code → 后端调用微信 code2Session → 获取 openid
→ 查询/自动注册会员 → 生成 login_session → 返回登录凭证 → 缓存 4 小时
项目核心亮点
业务价值
- 微信生态深度集成 — 微信一键授权登录 + 微信支付 JSAPI + 消息订阅,全链路融入微信生态,用户无感转化
- 完整商城闭环 — 从商品浏览、搜索、购物车、下单、支付到售后评价,全链路打通,提供完整的线上购物体验
- 会员精细化运营 — 积分累计/兑换/抵扣 + 会员等级 + 优惠券,形成”获客 → 留存 → 复购”的运营闭环
- 分销裂变增长 — 基于微信社交关系的分销体系,支持推广二维码、场景值传递推荐人、自动佣金结算,驱动用户自增长
- 双端覆盖 — 一套 UniApp 代码同时发布微信小程序和 H5 网页,降低开发成本,扩大用户触达面
技术优势
- 完善的权限体系 — 基于 RBAC 模型的权限管理,支持多角色、多用户、细粒度权限控制,适合企业级多岗位协作
- 高可维护性 — 后端采用 MVC 分层架构(Controller / Model / Service),前端组件化 + Mixin 复用,代码结构清晰
- 灵活的组件集成 — 基于 uView UI 2.x 组件库,快速构建高质量 UI,同时保持自定义扩展能力
- 商品体系灵活 — 支持单品和套餐两种商品类型,支持多级分类和子分组,满足不同销售场景
- 搜索体验优化 — 异步搜索补全 + 实时防抖 + 关键词高亮,提升用户查找效率
用户体验细节
- 差异化页面视觉 — 首页绿色、个人中心渐变蓝灰、购物车白色点缀红色,不同页面有差异化风格但保持整体协调
- 智能状态提示 — 订单列表五色状态标签、购物车角标数量提示、空状态友好引导、加载/触底/无更多三态提示
- 授权引导流程 — 购买前弹窗引导个人信息授权,使用微信原生
chooseAvatar 和 getPhoneNumber 能力,体验流畅
项目规模
| 维度 | 数据 |
|---|
| 后端代码 | PHP(ThinkPHP MVC 分层架构) |
| 前端代码 | UniApp(Vue.js 组件化开发) |
| 后端管理 | Bootstrap + jQuery 管理界面 |
| 数据表 | 43 张业务表 |
| 后端 API | 覆盖商品、订单、会员、支付、分销、提现等业务领域 |
| 小程序页面 | 20+ 个页面,覆盖完整购物链路 |
| 后台管理模块 | 10+ 个管理模块 |
| UI 组件库 | 集成 uView UI 2.x 组件体系 |
| 测试体系 | 配套单元测试和接口测试 |