编辑 | blame | 历史 | 原始文档

客户满意度评价功能部署说明

部署前准备

1. 环境要求

  • JDK 1.8+
  • Maven 3.6+
  • MySQL 5.7+
  • Node.js 14+
  • Nginx(生产环境推荐)

2. 配置文件修改

数据库配置

修改 ruoyi-admin/src/main/resources/application-prod.yml
yaml spring: datasource: url: jdbc:mysql://your-db-host:3306/your-database?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 username: your-username password: your-password

微信配置

修改 ruoyi-admin/src/main/resources/application-prod.yml
yaml wechat: appId: your_wechat_appid appSecret: your_wechat_appsecret redirectUri: https://yourdomain.com/evaluation

文件上传路径

修改 ruoyi-admin/src/main/resources/application-prod.yml
yaml ruoyi: profile: /path/to/upload

部署步骤

1. 后端部署

方式一:JAR包部署

# 编译打包
mvn clean package -Pprod

# 上传JAR包到服务器
scp ruoyi-admin/target/ruoyi-admin.jar user@server:/path/to/app/

# 启动应用
java -jar ruoyi-admin.jar --spring.profiles.active=prod

方式二:Docker部署

# Dockerfile
FROM openjdk:8-jre-alpine
COPY ruoyi-admin.jar app.jar
EXPOSE 8080
ENTRYPOINT ["java", "-jar", "/app.jar"]
# 构建镜像
docker build -t ruoyi-evaluation .

# 运行容器
docker run -d -p 8080:8080 --name ruoyi-evaluation ruoyi-evaluation

2. 前端部署

构建生产版本

cd ruoyi-ui
npm install
npm run build:prod

Nginx配置

server {
    listen 80;
    server_name yourdomain.com;
    
    # 前端静态文件
    location / {
        root /path/to/ruoyi-ui/dist;
        try_files $uri $uri/ /index.html;
    }
    
    # 后端API代理
    location /dev-api/ {
        proxy_pass http://localhost:8080/;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
    
    # 二维码图片访问
    location /qrcode/ {
        alias /path/to/upload/qrcode/;
    }
}

3. 数据库部署

执行SQL脚本

mysql -u username -p database_name < sql/customer_evaluation_tables.sql

创建数据库用户(可选)

CREATE USER 'evaluation_user'@'%' IDENTIFIED BY 'password';
GRANT SELECT, INSERT, UPDATE, DELETE ON database_name.* TO 'evaluation_user'@'%';
FLUSH PRIVILEGES;

微信配置

1. 微信公众平台配置

  1. 登录微信公众平台
  2. 进入"开发" -> "接口权限"
  3. 配置网页授权域名:yourdomain.com
  4. 配置JS接口安全域名:yourdomain.com

2. 测试微信功能

  1. 在微信中访问:https://yourdomain.com/evaluation?vehicle=粤A12345
  2. 确认能正常获取微信用户信息
  3. 测试评价提交功能

监控和维护

1. 日志监控

# 查看应用日志
tail -f logs/sys-info.log

# 查看错误日志
tail -f logs/sys-error.log

2. 数据库监控

-- 查看评价统计
SELECT 
    vehicle_no,
    COUNT(*) as total_count,
    AVG(total_score) as avg_score
FROM customer_evaluation 
WHERE evaluation_status = '1'
GROUP BY vehicle_no;

-- 查看今日评价数量
SELECT COUNT(*) FROM customer_evaluation 
WHERE DATE(evaluation_time) = CURDATE();

3. 文件清理

# 清理过期的二维码文件(可选)
find /path/to/upload/qrcode/ -name "*.png" -mtime +30 -delete

性能优化

1. 数据库优化

-- 添加索引
CREATE INDEX idx_evaluation_vehicle_time ON customer_evaluation(vehicle_no, evaluation_time);
CREATE INDEX idx_evaluation_status ON customer_evaluation(evaluation_status);

2. 缓存配置

# Redis配置
spring:
  redis:
    host: your-redis-host
    port: 6379
    database: 0
    timeout: 10s

3. 文件存储优化

  • 使用CDN加速二维码图片访问
  • 定期清理无用的二维码文件
  • 考虑使用对象存储服务(如阿里云OSS)

安全配置

1. HTTPS配置

server {
    listen 443 ssl;
    server_name yourdomain.com;
    
    ssl_certificate /path/to/cert.pem;
    ssl_certificate_key /path/to/key.pem;
    
    # 其他配置...
}

2. 接口安全

  • 评价提交接口添加频率限制
  • 敏感信息加密存储
  • 定期更新微信AppSecret

3. 数据备份

# 数据库备份
mysqldump -u username -p database_name > backup_$(date +%Y%m%d).sql

# 文件备份
tar -czf upload_backup_$(date +%Y%m%d).tar.gz /path/to/upload/

故障排查

1. 常见问题

二维码生成失败

  • 检查文件路径权限
  • 检查磁盘空间
  • 查看应用日志

微信授权失败

  • 检查域名配置
  • 检查HTTPS证书
  • 检查AppID和AppSecret

评价提交失败

  • 检查数据库连接
  • 检查必填字段验证
  • 查看错误日志

2. 联系支持

如遇到问题,请提供:
- 错误日志
- 操作步骤
- 环境信息
- 错误截图