## 智慧矿山系统 起爆系统PC客户端

## Setup
### Steps to build system
 Qt version: 3.8 ~ 3.9
 Arch: windows X86-64
 Required Plugins: webengine, mqtt, sql (MySQL drivier)
 Database: MySQL v7.5

### How to run
 * 配置数据库 MySQL服务器, 并初始化数据库表(database: pc-system)。
 * 设置本地数据库(databasemanager.cpp)
 * 设置Backend 地址(global.h)。
 * 设置mqtt server
 * [开发阶段]修改人脸识别数据 通过配置windows环境变量；certName(用户姓名，中文) 和 certNo (身份证号);

### PC Test Account
 * user1
  User: Admin
  Password: 123456
  
### FAQ:
1. 更换人脸识别数据?
   
2. MQTT 无法连接
   * 确认Mqtt服务器地址是否正确
   * 确认device UUID 没有和其他客户端冲突。
   * MQTT 只可以在Release编译通过才可以使用。
3. 如果发布：
   * 新建目录 Release， 并且复制build好的pc_system.exe到目录下。
   * 使用SDK(如：C:\Qt\6.9.0\msvc2022_64\bin)下的`windeploy.exe pc-system.exe`。
   * 确保需要的本地库也在打包的目录下。（如 MySQL.dll及有的可能需要Mysql bin下的ssl cropty 等lib）。
   
4. 有些请求为什么会失败？
   目前一些请求需要cookie, 所以需要从登录页面进入才可以。
5. 如何添加用户?
   访问后端APP。菜单： 基础信息 -> 人员管理。添加爆破员，操作员。

6. 安全员控制逻辑。
   安全员汇报的地址可能包含多个爆破工程，但一个爆破工程不会上报多次地址。
   
### TODOs:
 
