# mallshop
**Repository Path**: mxhui/mallshop
## Basic Information
- **Project Name**: mallshop
- **Description**: 🔥【官方推荐爆火商城小程序】Mallshop是一套企业级全场景电商商城解决方案,基于 Spring Boot + Vue3 + UniApp 构建,支持微信小程序、H5、App、多端商城,提供商品、订单、支付、营销、会员、积分等完整业务能力。
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 4
- **Created**: 2026-08-26
- **Last Updated**: 2026-08-26
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 商城优选
完整电商解决方案,覆盖微信小程序 / H5、运营管理后台与 Spring Boot 后端 API。
## 项目结构
| 目录 | 技术栈 | 说明 |
|------|--------|------|
| `uniapp/` | uni-app + Vue3 + TypeScript + UnoCSS + uview-plus | 微信小程序 / H5 用户端 |
| `backend/` | Spring Boot 3.0.5 + MyBatis-Plus + Sa-Token + MySQL | 业务 API、微信支付 |
| `admin/` | Vue3 + Vite + Pinia + Naive UI | 运营管理后台 |
| `*.py` | Python 采集 / 数据修复脚本 | 商品数据抓取与展示字段清洗 |
## 小程序界面预览
| 首页 | 分类 | 商品详情 |
|:---:|:---:|:---:|
|
|
|
|
| 购物车 | 我的 | 搜索 |
|:---:|:---:|:---:|
|
|
|
|
## 功能概览
### 小程序端
- TabBar:首页、分类、购物车、我的
- 搜索、商品列表 / 详情(SKU)、确认订单、订单列表 / 详情
- 收货地址、优惠券、收藏、足迹、积分、会员中心
- 微信登录、头像上传、微信支付(JSAPI)
### 管理后台
- 仪表盘经营数据
- 商品管理、分类管理
- 订单列表与发货
- 轮播图、优惠券等营销配置
- 会员列表、系统设置
### 后端 API
| 前缀 | 用途 |
|------|------|
| `/api/app/**` | 小程序 / H5 |
| `/api/admin/**` | 管理后台 |
| `/api/pay/notify/**` | 微信支付回调 |
鉴权请求头:`Authorization: Bearer `
## 环境要求
- JDK 17+
- Maven 3.8+
- MySQL 8.0+
- Node.js 20+、pnpm 9+(admin / uniapp)
## 快速启动
### 1. 数据库
```bash
# 初始化(若仓库中有 schema 脚本)
mysql -u root -p < backend/src/main/resources/schema.sql
```
复制示例配置后按本机填写:
```bash
cp backend/src/main/resources/application.yml.example \
backend/src/main/resources/application.yml
```
修改其中的数据源账号密码,以及微信 / 支付宝相关密钥(真实 `application.yml` 已加入 `.gitignore`,勿提交)。
默认库名:`tata_mall`
### 2. 后端
```bash
cd backend
mvn spring-boot:run
```
服务地址:http://localhost:8080
默认管理员:`admin` / `admin123`
### 3. 管理后台
```bash
cd admin
pnpm install
pnpm dev
```
访问:http://localhost:5173
### 4. 小程序 / H5
```bash
cd uniapp
pnpm install
pnpm dev:h5 # H5 预览
pnpm dev:mp # 微信小程序
```
微信开发者工具中的小程序 AppID 需与 `uniapp/env/.env` 中 `VITE_WX_APPID` 保持一致。
## 配置说明
- 后端配置:`backend/src/main/resources/application.yml`
- 上传目录:项目根目录 `uploads/`(运行时生成,勿提交)
- 微信支付证书:`backend/cert/`、`cert/`(私钥等敏感文件已加入 `.gitignore`)
- 生产环境建议用环境变量注入密钥,例如:
```bash
export WECHAT_MINIAPP_SECRET=你的小程序密钥
```
微信支付商户回调地址示例:
`https://{你的域名地址}/api/pay/notify/wechat`
## 目录说明(后端)
```
com.tata.mall
├── common/ # 统一响应、异常处理
├── config/ # MyBatis-Plus、CORS、Sa-Token
├── controller/
│ ├── app/ # 小程序 API
│ └── admin/ # 管理后台 API
├── dto/
├── entity/
├── mapper/
└── service/
```
## 辅助脚本
| 脚本 | 说明 |
|------|------|
| `spider.py` / `spider-sjz.py` | 商品数据采集 |
| `fix_goods_display.py` | 修复商品展示字段 |
| `dedupe_goods_display.py` | 商品展示去重 |
## 版本规划
- **V1**:首页装修、商品、购物车、订单、地址、优惠券、会员、后台运营模块、微信支付
- **V2(预留)**:直播、短视频、分销、多商户、AI 推荐、积分游戏等
## 注意事项
1. 演示环境管理员密码可能为明文,生产请改用 BCrypt 等加密存储。
2. 不要将微信支付私钥、API Key、小程序 Secret 提交到 Git。
3. `uniapp/` 可能自带独立 Git 仓库,根目录 `.gitignore` 主要覆盖本仓库三端与脚本产物。