# 微信报修小程序V6.0
**Repository Path**: cxyax/WeChatComputer-roomMaintenance
## Basic Information
- **Project Name**: 微信报修小程序V6.0
- **Description**: 设备、机房报修小程序,实用表单申报工具类小程序,适用于学校、公司,满足你的需求
- **Primary Language**: JavaScript
- **License**: MIT
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 381
- **Forks**: 114
- **Created**: 2021-10-03
- **Last Updated**: 2026-05-23
## Categories & Tags
**Categories**: weixin-lapp
**Tags**: 机房报修
## README
# 微信报修小程序V6.0【重出江湖!】
## 一、先看Demo(demo更新至6.0)
**想看界面图片的,辛苦你爬一下楼,图片在最底下**
> tips:还是要以Demo为准,图片可能不准确,请自行对比。

## 二、功能介绍
### 1、当前版本
报修助手小程序,适用于学校机房、公司设备以及其他团队后勤部,系统为简单报修留档记录,**Docker一键部署,小白可以很快上手**
支持多管理人员、消息推送、维修措施反馈,导出报表,打赏等功能,满足你的日常需求。
### 2、6.0 版本说明
云开发 4.1 为云开发的最后一版,由于云开发资源限制以及升级影响,而且开发限制较大,现在废弃不再维护,请大家尽快升级6.0版本。
6.0 版本相较 4.1 云开发版,整套系统从云开发能力迁移为独立后端架构。
主要升级内容如下:
- 废弃 `wx.cloud` 相关调用,统一切换为后端 HTTP API
- 登录态改为后端 JWT 鉴权,统一走登录态恢复与过期跳转
- 全局基础数据改为通过 `/api/system/bootstrap` 统一下发
- 工单、资讯、管理员申请、评价、导出等模块全部改为真实后端接口
- 数据存储改为 MySQL,缓存能力改为 Redis
- 图片上传、工单导出、资讯评论、积分评价、协同维修均改为服务端落库
- 部署方式从“开通云开发即可”升级为“小程序前端 + 后端服务 + 数据库”的标准业务系统部署模式
## 三、软件架构
本项目基于NestJS后端框架,简单易用,逻辑主要是对数据库的增删查改,页面自写无模板,部分使用vant weapp小程序组件库、Color UI组件库。大家可用于学习或者二次开发,有什么不懂的地方可联系我。如果用于其他用途请注明一下原作者,谢谢大家。
## 四、部署前准备
1. 小程序账号(微信公众平台注册 https://mp.weixin.qq.com/ )
2. 已备案域名
3. 服务器1台(配置需要自行评估用户量)
服务器推荐(折扣优惠链接):
- 腾讯云:https://curl.qcloud.com/rsGihuHT
- 阿里云:https://www.aliyun.com/minisite/goods?userCode=9z8xryaa
## 五、安装教程
### 5.1、部署后端
> 项目纯属公益项目,**可以商用,但请务必保留作者信息**,请勿用作违法用途
> 如有问题或需要帮助,请加微信:FreeRoot200716
> **教程中使用“【】”包裹的内容,请自行替换。**
#### 5.1.1、拉取docker镜像
> Docker镜像地址:https://hub.docker.com/r/cxyax/wechat-repair-server
> 自行拉取最新版本即可
镜像拉取:
```docker
docker pull cxyax/wechat-repair-server:版本号
```
#### 5.1.2、启动服务
镜像运行:
```docker
docker run -d \
--name wechat-repair-server \
--restart unless-stopped \
-p 3000:3000 \
-e PORT=3000 \
-e DATABASE_URL="mysql://【你的数据库用户名】:【你的数据库密码】@mysql:3306/【数据库名称】" \
-e JWT_ACCESS_SECRET="【jwt秘钥,随便填】" \
-e JWT_REFRESH_SECRET="【jwt秘钥,随便填】" \
-e JWT_ACCESS_EXPIRES_IN="2h" \
-e JWT_REFRESH_EXPIRES_IN="30d" \
-e WECHAT_APP_ID="【你的小程序AppId】" \
-e WECHAT_APP_SECRET="【你的小程序AppId】" \
-e REDIS_URL="redis://【你的redisIP】:6379" \
-e RUN_PRISMA_MIGRATE="true" \
-v wechat-repair-server-uploads:/app/uploads \
cxyax/wechat-repair-server:【你拉取的版本号】
```
## 必填环境变量
- `DATABASE_URL`:MySQL 连接串
- `JWT_ACCESS_SECRET`:访问令牌签名密钥
- `JWT_REFRESH_SECRET`:刷新令牌签名密钥
- `WECHAT_APP_ID`:微信小程序 `AppID`
- `WECHAT_APP_SECRET`:微信小程序 `AppSecret`
## 选填环境变量
- `PORT`:容器内服务端口,默认 `3000`
- `JWT_ACCESS_EXPIRES_IN`:访问令牌有效期,例如 `2h`
- `JWT_REFRESH_EXPIRES_IN`:刷新令牌有效期,例如 `30d`
- `REDIS_URL`:Redis 连接串,不填时系统会自动降级为不使用 Redis 缓存
- `RUN_PRISMA_MIGRATE`:是否在容器启动时执行 `prisma migrate deploy`,默认 `true`
这一步就告完成,服务启动成功,后面解析域名到你的这个IP上,nginx代理到3000端口即可(PS:小程序必须需要https协议,所以必须加域名)
## 5.2、小程序端配置
修改`miniprogram/config/env.js`文件中的 `baseUrl` 即可
```js
/**
* 小程序环境配置
*/
const env = {
// 第一阶段默认指向本地 NestJS 服务。
baseUrl: 'https://【替换成你的域名】/api',
// 登录失效后统一跳转的页面。
loginPage: '/pages/login/login',
// 默认头像占位图。
defaultAvatarUrl: '/images/logo.png',
};
module.exports = env;
```
## 六、版本更新说明
### 6.0.0版本【重出江湖】
1. 废弃 `wx.cloud` 相关调用,统一切换为后端 HTTP API
2. 登录态改为后端 JWT 鉴权,统一走登录态恢复与过期跳转
3. 全局基础数据改为通过 `/api/system/bootstrap` 统一下发
4. 工单、资讯、管理员申请、评价、导出等模块全部改为真实后端接口
5. 数据存储改为 MySQL,缓存能力改为 Redis
6. 图片上传、工单导出、资讯评论、积分评价、协同维修均改为服务端落库
7. 部署方式从“开通云开发即可”升级为“小程序前端 + 后端服务 + 数据库”的标准业务系统部署模式
### 4.1.0版本【再见,云开发!】
1、修复头像接口问题,所有用户头像上传至云开发存储中的 userlogo目录下
2、修复邮件undefind问题
3、修复处理标签样式问题
4、优化云函数sendEmail模板代码冗余问题
### 4.0.0版本
1、新增创建工单时带图片
2、新增问题查询论坛,管理员可以上传一些小问题,不需要技术就可以修复的问题上传至论坛,用户使用的时候出现问题直接查询论坛
3、新增短信通知
4、新增站内信,新建工单后可以直接跟维修人员聊天
5、待定(欢迎评论区提建议)
### 3.8.0版本
1、新增创建工单时带图片
2、优化信息填报流程
3、新增问题查询论坛,管理员可以上传一些小问题,不需要技术就可以修复的问题上传至论坛,用户使用的时候出现问题直接查询论坛
4、新增定位获取位置(自动填写位置)
5、新增管理员申请

### 3.1.0 版本
1、新增导出报表
2、新增打赏功能
3、修复登录问题
4、修复头像无法获取访问问题
## 七、加入我们
联系QQ:1973245308
联系邮箱:freeroot@163.com
联系微信:FreeRoot200716
微信交流群
群超200人无法扫码进入,加我好友拉大家进群

## 九、界面展示



## 总结
如果感觉程序还不错,解决了你问题,请作者喝杯咖啡吧,谢谢!
