123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- #ifndef TOEQMDATABASE_H
- #define TOEQMDATABASE_H
- #include "spdlog/spdlog.h"
- #include "lhhttpapi.h"
- #include "GlobalVariable.h"
- class ToEQMDataBase
- {
- public:
- ToEQMDataBase();
- ~ToEQMDataBase();
- /* 初始化WebAPI */
- bool initWebApi(const QString& url,const QString& serverIP,const QString& serID);
-
- /* 写入算法信息,写入tAction表 */
- bool writeAlgorithmInfo(std::vector<AlgorithmInfo>& vecInfo);
- /* 删除算法信息 */
- bool deleteAlgorithmInfo(std::vector<AlgorithmInfo>& vecDeleteInfo);
- /* 获取tAction数据 */
- bool getAlgorithmInfo(std::vector<AlgorithmInfo>& vecInfo);
- /* 插入设备信息 */
- bool insertDeviceInfo(std::vector<DeviceInfo>& vecInfo);
- /* 更新设备信息 */
- bool updateDeviceInfo(std::vector<DeviceInfo>& vecUpdateInfo);
- /* 删除设备信息 */
- bool deleteDeviceInfo(std::vector<DeviceInfo>& vecDeleteInfo);
- /* 从EQM获取CamerInfo信息 */
- bool getDeviceInfo(std::vector<DeviceInfo>& vecInfo);
- /* 获取通道信息 */
- bool getChannelInfo(std::map<int, std::string>& mapChannelName);
- /* 获取摄像机信息 */
- bool getCameraInfo(std::map<int, std::string>& mapCameraName);
-
- /* 插入设备和算法关联信息 */
- bool insertDeviceAlgorithmInfo(std::vector<DeviceInfo>& vecInfo);
- /* 更新设备和算法关联表 */
- bool updateDeviceAlgorithmInfo(std::vector<DeviceInfo>& vecInfo);
- /* 删除设备和算法关联表 */
- bool deleteDeviceAlgorithmInfo(std::vector<DeviceInfo>& vecInfo);
- /* 删除设备和算法关联表 */
- bool deleteDeviceAlgorithmInfo(std::list<int>& vecID);
- /* 获取设备和算法信息关联表,需要先从EQM数据库中获取到设备信息,然后根据读取到的设备信息,取出已经删除的设备ID */
- bool getDeviceAlgorithmInfo(std::vector<DeviceInfo>& vecInfo, std::list<int>& listDevIDDelete);
- /* 获取每个算法的详细信息 */
- bool getActionInfo(ListActionInfo& listInfo);
- /* 获取摄像机和房间关联信息 */
- bool getRoomCameraInfo(std::list<RoomCameraInfo>& vecInfo);
- /* 写入报警信息 */
- bool insertAlarmInfo(const AlarmInfo& alarmInfo);
- /* 更新报警结束时间 */
- bool updateAlarmEndTime(const AlarmInfo& alarmInfo);
- /* 获取人员计数规则 */
- bool getPersonCountRuleInfo(std::vector<PersonCountRuleInfo>& vecInfo);
- /* 获取报警时段,也同时获取报警的应用信息 */
- bool getAlarmAppInfo(std::list<AppAndTimeInfo>& listInfo);
- /* 写入在岗信息 */
- bool insertOnWorkInfo(const RoomFaceInfo& onWorkInfo);
- private:
- std::shared_ptr<spdlog::logger> m_logger = nullptr;
- lhhttpapi* m_httpApi = nullptr;
- QString m_userToken;
- };
- #endif /* TOEQMDATABASE_H */
|