# 看雪校园微信小程序项目
**Repository Path**: yunyustudio/wechatMiniForum
## Basic Information
- **Project Name**: 看雪校园微信小程序项目
- **Description**: 这只是我做过的外包项目之一,并非开源,仅作展示。
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-07-03
- **Last Updated**: 2026-07-03
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# 看雪校园社区
[English](README.en.md) | 中文
看雪校园社区是一套面向高校与校区运营场景的校园社区、校园跑腿与成长激励平台。项目采用前后端分离架构,包含微信小程序、Vue 管理后台与 Spring Boot 后端服务,覆盖内容社区、跑腿订单、微信支付、积分等级、优惠券、消息通知、内容治理和运营配置等核心业务。
> 当前维护主线位于 [`前后端分离架构新看雪校园/`](前后端分离架构新看雪校园/)。根目录下的 `admin/`、`miniprogram/`、`cloudfunctions/` 为早期架构或历史代码,可按需要参考。
## 项目预览




## 核心能力
- 校园社区:信息流、板块、发帖、图文上传、评论/回复、点赞、收藏、搜索、热门榜单、个人主页。
- 校园跑腿:跑腿大厅、发单、接单、取件、送达凭证、确认收货、取消/退款、评价、跑腿员等级。
- 微信支付闭环:JSAPI 支付、支付回调、退款、商家转账、资金链路状态同步。
- 成长激励:签到、积分、经验值、用户等级、积分明细、积分规则、优惠券兑换与订单抵扣。
- 内容治理:帖子/评论举报、内容过滤规则、微信内容安全检测、后台审核与处理反馈。
- 多校区运营:学校、校区、院系、专业、用户资料、校区切换与审核机制。
- 后台管理:内容管理、跑腿订单、优惠券、认证审核、信用分、消息模板、系统配置、操作日志。
- 消息触达:小程序订阅消息、系统通知、企业微信推送相关能力。
## 源码规模
| 维度 | 当前规模 | 说明 |
|---|---:|---|
| 微信小程序页面 | 40 个 | 以 `miniCommunityFront/app.json` 为准 |
| 微信小程序服务层 | 7 个 | 用户、社区、跑腿、优惠券、消息、举报、订阅 |
| 微信小程序组件 | 10 个 + 自定义 TabBar | 帖子卡片、空状态、筛选、悬浮按钮、订阅弹窗等 |
| 后端 Controller | 60 个 | 用户端与管理端各 30 个左右 |
| 后端 Service | 42 个 | 业务服务、支付、安全、推送、存储等 |
| 后端 Entity | 49 个 | MyBatis-Plus 实体 |
| SQL 建表清单 | 54 张表 | 主库脚本与增量脚本位于 `compusCommunity/sql` |
| 管理后台页面 | 28 个 | 以 `AdminVueWeb/src/views` 为准 |
## 技术栈
| 模块 | 技术 |
|---|---|
| 后端服务 | Java 17、Spring Boot 3.2.5、Spring Security、MyBatis-Plus 3.5.5、Druid、JWT、Knife4j、Hutool、Lombok |
| 数据与缓存 | MySQL 8、Redis |
| 微信小程序 | 原生微信小程序、WXML、WXSS、JavaScript、自定义 TabBar、隐私接口声明 |
| 管理后台 | Vue 3、Vite、Element Plus、Pinia、Vue Router、Element Plus Icons |
| 文件与图片 | 本地上传目录、腾讯云 COS、Thumbnailator |
| 外部能力 | 微信登录、手机号授权、内容安全、订阅消息、微信支付 V3、退款、商家转账、企业微信推送 |
| 部署运维 | Nginx、HTTPS、systemd、Maven、npm |
## 系统架构
```mermaid
flowchart LR
Mini["微信小程序
miniCommunityFront"] --> Nginx["Nginx /api 反向代理"]
Admin["Vue 管理后台
AdminVueWeb"] --> Nginx
Nginx --> Backend["Spring Boot API
compusCommunity :8080"]
Backend --> MySQL["MySQL"]
Backend --> Redis["Redis"]
Backend --> Storage["本地上传目录 / 腾讯云 COS"]
Backend --> Wechat["微信开放能力
登录 / 手机号 / 内容安全 / 订阅消息"]
Backend --> Pay["微信支付 V3
支付 / 退款 / 转账"]
Backend --> WeCom["企业微信推送"]
```
接口分层:
- 小程序接口:`/api/wechatapi/**`
- 管理后台接口:`/api/admin/**`
- 后端默认端口:`8080`
- 生产环境通常通过 Nginx 对 `/api` 做反向代理
## 目录结构
```text
.
├── README.md
├── README.en.md
├── homepage.png
├── homepage_scrolled.png
├── miniprofile.jpg
├── personlCenter.jpg
├── docs/
├── admin/ # 早期管理端代码
├── miniprogram/ # 早期小程序代码
├── cloudfunctions/ # 早期云函数代码
└── 前后端分离架构新看雪校园/
├── compusCommunity/ # Spring Boot 后端服务
│ ├── src/main/java/
│ ├── src/main/resources/
│ ├── sql/ # 主库与增量 SQL
│ ├── nginx/ # Nginx 与部署配置
│ └── pom.xml
├── AdminVueWeb/ # Vue 3 管理后台
│ ├── src/
│ ├── public/
│ └── package.json
├── miniCommunityFront/ # 微信原生小程序
│ ├── pages/
│ ├── components/
│ ├── services/
│ ├── utils/
│ └── app.json
└── 第二次开发报价/
└── 项目结束文档总结/ # 需求、技术、实施、运维与模块总结文档
```
## 快速开始
### 1. 环境要求
| 环境 | 建议版本 |
|---|---|
| JDK | 17+ |
| Maven | 3.8+ |
| MySQL | 8.0+ |
| Redis | 6.0+ |
| Node.js | 18+ |
| npm | 9+ |
| 微信开发者工具 | 最新稳定版 |
### 2. 初始化数据库
```bash
cd 前后端分离架构新看雪校园/compusCommunity
mysql -u root -p -e "CREATE DATABASE IF NOT EXISTS compus DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;"
mysql -u root -p compus < sql/compus.sql
```
如需执行增量脚本,请先确认主库脚本是否已经包含对应表结构,避免重复建表:
```text
sql/v2.2_unique_key_constraints.sql
sql/v2.6_campus_admin_moderation.sql
sql/t_content_filter_rule.sql
sql/t_errand_operation_log.sql
sql/t_system_operation_log.sql
sql/t_subscribe_template.sql
sql/t_user_subscribe.sql
sql/xuchang_university_init_data.sql
```
### 3. 启动后端服务
```bash
cd 前后端分离架构新看雪校园/compusCommunity
mvn clean package -DskipTests
mvn spring-boot:run
```
默认开发配置读取 `src/main/resources/application-dev.yml`,服务端口为 `8080`。生产环境建议通过环境变量或独立配置文件注入数据库、Redis、JWT、微信、支付与 COS 等配置。
### 4. 启动管理后台
```bash
cd 前后端分离架构新看雪校园/AdminVueWeb
npm install
npm run dev
```
生产环境接口地址可通过 `.env.production` 中的 `VITE_API_BASE_URL` 配置。
### 5. 运行微信小程序
1. 使用微信开发者工具导入 `前后端分离架构新看雪校园/miniCommunityFront`。
2. 在 `utils/constants.js` 中确认 `API_BASE_URL` 指向后端小程序接口,例如 `https://your-domain.com/api/wechatapi`。
3. 在微信公众平台配置合法域名、隐私接口、订阅消息模板、内容安全回调与支付回调。
4. 按体验版、审核版、正式版流程发布。
## 生产配置提示
公开仓库或交付前请重点检查:
- 不要提交真实数据库密码、微信密钥、支付证书、COS 密钥、JWT 密钥、Token 缓存。
- 将 `application-dev.yml` 中的本地开发配置替换为环境变量或私有配置。
- 将 `.env.production`、`utils/constants.js` 中的域名改成实际部署域名。
- 支付回调、退款回调、商家转账回调必须使用 HTTPS 公网地址。
- 上传目录、支付证书、Nginx 配置、数据库备份需要纳入运维备份策略。
## 构建与部署
后端构建:
```bash
cd 前后端分离架构新看雪校园/compusCommunity
mvn clean package -DskipTests
java -jar target/compusCommunity-0.0.1-SNAPSHOT.jar --spring.profiles.active=prod
```
管理后台构建:
```bash
cd 前后端分离架构新看雪校园/AdminVueWeb
npm run build
```
Nginx 与服务器部署参考:
- [`compusCommunity/nginx/DEPLOYMENT.md`](前后端分离架构新看雪校园/compusCommunity/nginx/DEPLOYMENT.md)
- [`compusCommunity/nginx/kxxy.site.conf`](前后端分离架构新看雪校园/compusCommunity/nginx/kxxy.site.conf)
- [`compusCommunity/nginx/宝塔面板配置教程.md`](前后端分离架构新看雪校园/compusCommunity/nginx/宝塔面板配置教程.md)
- [`项目实施文档.md`](前后端分离架构新看雪校园/第二次开发报价/项目结束文档总结/项目实施文档.md)
- [`项目运维文档.md`](前后端分离架构新看雪校园/第二次开发报价/项目结束文档总结/项目运维文档.md)
## 文档索引
- [`看雪校园功能说明书-源码扫描版.md`](前后端分离架构新看雪校园/第二次开发报价/项目结束文档总结/看雪校园功能说明书-源码扫描版.md)
- [`软件技术模块开发文档.md`](前后端分离架构新看雪校园/第二次开发报价/项目结束文档总结/软件技术模块开发文档.md)
- [`项目需求调研文档.md`](前后端分离架构新看雪校园/第二次开发报价/项目结束文档总结/项目需求调研文档.md)
- [`项目实施文档.md`](前后端分离架构新看雪校园/第二次开发报价/项目结束文档总结/项目实施文档.md)
- [`项目运维文档.md`](前后端分离架构新看雪校园/第二次开发报价/项目结束文档总结/项目运维文档.md)
- [`帖子最终模块文档.md`](前后端分离架构新看雪校园/第二次开发报价/项目结束文档总结/帖子最终模块文档.md)
- [`跑腿最终技术模块稳定.md`](前后端分离架构新看雪校园/第二次开发报价/项目结束文档总结/跑腿最终技术模块稳定.md)
- [`个人成长体系模块最终文档.md`](前后端分离架构新看雪校园/第二次开发报价/项目结束文档总结/个人成长体系模块最终文档.md)
## 适用场景
- 高校校园社区、小程序论坛、校园信息流。
- 校园跑腿、取送件、校内互助服务。
- 多校区平台运营和后台内容治理。
- 微信生态项目的支付、订阅消息与内容安全集成参考。
- 前后端分离项目交付、二次开发与部署运维参考。
## 授权说明
当前仓库包含业务源码、交付文档和部署资料。用于 Gitee/GitHub 展示或对外发布时,请根据实际授权方式补充 `LICENSE` 文件,并在公开前完成敏感配置清理。