# 看雪校园微信小程序项目 **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/` 为早期架构或历史代码,可按需要参考。 ## 项目预览 ![看雪校园首页预览](homepage.png) ![看雪校园页面滚动预览](homepage_scrolled.png) ![小程序个人资料页预览](miniprofile.jpg) ![小程序个人中心预览](personlCenter.jpg) ## 核心能力 - 校园社区:信息流、板块、发帖、图文上传、评论/回复、点赞、收藏、搜索、热门榜单、个人主页。 - 校园跑腿:跑腿大厅、发单、接单、取件、送达凭证、确认收货、取消/退款、评价、跑腿员等级。 - 微信支付闭环: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` 文件,并在公开前完成敏感配置清理。