更新记录
1.0.1(2026-09-24) 下载此版本
详情微信联系java_123567
平台兼容性
uniappClient · 多租户陪玩SaaS系统客户端(uni-app + Vue3)
本工程为 HBuilderX 标准 uni-app 项目(Vue3 + TypeScript),无需 npm 安装依赖,直接用 HBuilderX 打开即可运行。
一、环境要求
| 项 | 说明 |
|---|---|
| 编辑器 | HBuilderX 3.8+(推荐最新正式版) |
| 运行目标 | H5 / 微信小程序 / App(Android、iOS) |
| 后端服务 | admin/admin-back(Spring Boot,默认 http://172.0.0.1:8080) |
| 数据库 | MySQL 8.0+(先执行 sql/ 下脚本),Redis(缓存与令牌可扩展) |
二、在 HBuilderX 中运行
- HBuilderX → 文件 → 打开目录 → 选择本
uniappClient目录。 - 修改后端地址:打开
utils/request.ts,修改BASE_URL:- 浏览器(H5)调试:保持默认
http://172.0.0.1:8080或改为http://localhost:8080。 - 手机/模拟器(App、小程序真机)调试:改为电脑局域网 IP,例如
http://192.168.1.10:8080。
- 浏览器(H5)调试:保持默认
- 启动后端(
admin/admin-back,默认 dev 环境)。 - 运行:
- H5:菜单「运行 → 运行到浏览器 → Chrome」
- 微信小程序:先在
manifest.json的mp-weixin.appid填入小程序 AppID,再「运行 → 运行到小程序模拟器 → 微信开发者工具」 - App:菜单「运行 → 运行到手机或模拟器」(需先安装 Android 模拟器或连接真机并开启 USB 调试)
- 首次登录使用默认账号:
admin / 123456(可在「我的 → 实名认证/改密」中完善资料)。
三、目录结构
uniappClient
├── api/
│ └── index.ts # 接口层(认证/陪玩/订单/钱包/支付/打赏/工作台/提现/通知/推广)
├── pages/
│ ├── index/index.vue # 首页:品牌装修、公告、分类、陪玩列表
│ ├── login/login.vue # 统一登录(账号密码 / 微信一键登录占位 / 邀请码绑定)
│ ├── companion/
│ │ ├── list/list.vue # 陪玩列表(分类筛选、昵称搜索)
│ │ └── detail/detail.vue # 陪玩详情(价格表、历史评价、下单、打赏)
│ ├── order/order.vue # 我的订单(状态筛选、评价、申请退款、发布需求选券)
│ ├── wallet/
│ │ ├── wallet.vue # 钱包(余额、冻结、VIP、资金流水、券入口)
│ │ ├── coupon/coupon.vue # 我的优惠券(领券中心 + 全部/待使用/已使用/已过期四页签)
│ │ └── recharge/recharge.vue # 充值中心(满赠活动 + 充值)
│ ├── work/
│ │ ├── workbench/workbench.vue # 打手工作台(上下线、等级与提现规则、接单、任务凭证、提现申请、入驻认证)
│ │ └── orders/orders.vue # 接单大厅(抢单)
│ └── user/
│ ├── profile/profile.vue # 我的(实名认证、身份切换、客服、消息、退出登录)
│ └── messages/messages.vue # 消息中心
├── static/logo.png
├── utils/request.ts # 请求封装(BASE_URL、Token、统一错误处理)
├── App.vue # 应用入口(启动/前后台日志)
├── main.js # Vue3 应用创建
├── manifest.json # uni-app 应用配置(各端 AppID、统计开关)
├── pages.json # 页面路由与 tabBar
└── uni.scss # 全局样式变量
四、页面与需求对照(14 页)
| 需求(大商户模式) | 对应页面 / 能力 |
|---|---|
| 单入口登录、邀请码裂变 | pages/login/login.vue(账号/微信模拟登录,邀请码选填自动绑定店铺) |
| 首页千店千面(品牌装修) | pages/index/index.vue(已登录时调 /api/decor/current 按服务端归属解析店铺;themeColor 经 utils/theme.ts 派生整套 CSS 变量换肤;DIY version:2 组件按序渲染:轮播/公告/推荐/分类/图文/榜单) |
| 陪玩列表与详情 | pages/companion/list/list.vue、pages/companion/detail/detail.vue(价格表、评价、相册语音、打赏——物品按店铺隔离) |
| 下单(余额/微信)、打赏 | 详情页下单弹窗与打赏弹窗(下单可选优惠券,抵扣按券后实付校验门槛) |
| 订单状态、评价、售后退款与申诉、发布需求单(发单进大厅) | pages/order/order.vue(发布需求同样可选券;余额不足按券后应付判断并给出去充值/切微信出口) |
| 钱包、充值满赠、资金流水 | pages/wallet/* |
| 优惠券:领取、券包、下单与发布抵扣 | pages/wallet/coupon/coupon.vue + couponApi(全部/待使用/已使用/已过期;核销后订单号回写,退款或超时未支付自动退券,到期自动转「已过期」)。优惠券与我的钱包均为客户端用户专属:代理商/平台账号登录后这两页只显示说明卡、不发客户端专属请求(服务端 /api/auth/wallet、/api/coupon/* 对非客户端身份返回 403),经营侧请在管理后台「资金管理」「运营中心 → 优惠券管理」操作 |
| 打手接单、任务凭证、等级、提现 | pages/work/workbench、pages/work/orders(动态身份 TabBar,打手 4 tab / 用户 3 tab)。完成订单必须上传任务截图凭证,后台审核通过后订单才转待评价并自动结算到打手钱包,未过审前买家确认完成与超时自动完成均被服务端拦下 |
| 普通用户申请成为打手 | pages/work/apply/apply.vue(资料齐全自动通过并切换身份) |
| 个人信息修改 | pages/user/profile/edit/edit.vue(昵称+头像,PUT /api/auth/profile) |
| 实名认证、双身份切换、客服、消息 | pages/user/* |
登录态与跳转约定
- 所有受保护页面
onShow统一ensureLogin()(utils/auth.ts);请求层 401 自动清缓存并reLaunch登录页(utils/request.ts); - 店铺上下文:本地
agent_id仅作游客扫码缓存;登录后一律以服务端归属为准,登录/退出/401 均清除,避免换号残留。
五、接口约定
- 所有请求经
utils/request.ts统一封装:- 自动附加
Authorization: Bearer <client_token> - 业务码
200为成功;401未登录、403无权限,会有统一提示 - 本地缓存键:
client_token/client_role_type/client_user_id
- 自动附加
- 后端接口前缀为
/api/*,清单见admin/admin-back各 Controller。
六、占位与后续替换说明
| 项 | 现状 | 替换点 |
|---|---|---|
| 微信登录 | 模拟 code 换取登录态 | pages/login/login.vue 中 handleWxLogin,替换为 uni.login 获取真实 code |
| 微信支付 | 本地/测试为模拟支付(/api/pay/mock-success) |
生产环境由后端统一下单,客户端仅需调起 uni.requestPayment |
| 微信订阅消息 | 后端占位实现(站内通知已可用) | admin-back 的 NotifyService.sendSubscribeMessage |
| 图标 | 未使用图标资源(tabBar 为纯文字) | 从 iconfont 下载后放入 static/,在 pages.json 的 tabBar 与页面中配置 |
七、常见问题
- 请求失败/跨域:确认
BASE_URL与后端一致;后端已开启 CORS(见WebConfig),H5 调试可直接访问。 - 未登录自动跳转:首页
onShow会校验client_token,未登录时回到登录页。 - 真机无法访问后端:手机与电脑需在同一局域网,且后端允许外部访问(防火墙放行 8080)。
- 小程序域名校验:开发阶段保持
manifest.json中urlCheck: false;正式发布需在微信后台配置合法域名(HTTPS)。 - HBuilderX 提示「请确认您的项目模板是否支持vue3:根目录缺少 index.html」:
- 本项目根目录必须保留
index.html(uni-app Vue3 标准 H5 入口模板),请勿删除; - 若提示项目类型识别异常(例如仍按 uni-app x 识别),请先关闭项目,再「文件 → 打开目录」重新打开本
uniappClient目录,并删除项目下unpackage/缓存目录后重试; - 本项目为 经典 uni-app(Vue3) 工程:入口为
main.js+App.vue,页面为pages/*.vue,不含App.uvue/main.uts(那是 uni-app x 模板的文件)。八、代理商申请(v1.1 新增)
- 本项目根目录必须保留
| 页面 | 路径 | 说明 |
|---|---|---|
| 申请成为代理商 | pages/agent/apply/apply |
填写代理商名称、品牌名称、联系人、申请说明;展示我的申请状态与审核意见 |
入口:我的 → 申请成为代理商(状态)。
接口:
| 方法 | 路径 | 说明 |
|---|---|---|
| POST | /api/agent-apply/apply |
提交申请(服务端校验:已有待审/已通过则提示) |
| GET | /api/agent-apply/my |
我的申请记录(最新一条显示在页面顶部) |
审核通过后,平台会自动建立代理商租户并生成后台登录账号(账号与初始密码在「消息中心」通知中可见)。

收藏人数:
下载插件并导入HBuilderX
下载插件ZIP
赞赏(0)
下载 1
赞赏 0
下载 12639317
赞赏 1950
赞赏
京公网安备:11010802035340号