FromWebAPI.h 4.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. #ifndef __FROMWEBAPI_H_
  2. #define __FROMWEBAPI_H_
  3. #include "spdlog/spdlog.h"
  4. #include "WebAPIBase.h"
  5. #include "GlobalVariable.h"
  6. #include <string>
  7. class FromWebAPI : public WebAPIBase
  8. {
  9. public:
  10. FromWebAPI();
  11. ~FromWebAPI() override;
  12. /* 获取数据库中的对比项信息 */
  13. bool getCompareItemInfo(QList<CompareItemInfo_t>& listItems);
  14. /* 添加对比项信息 */
  15. bool insertCompareItem(const QList<CompareItemInfo_t>& listItems);
  16. /* 插入对比项通道信息 */
  17. bool insertCompareItemRoad(const QList<CompareItemInfo_t>& listItems);
  18. /* 只更新对比项信息 */
  19. bool updateCompareItemOnly(const QList<CompareItemInfo_t>& listItems);
  20. /* 只更新对比项通道信息,通过先删除所有的itemID的对比项,再插入所有的itemID的对比项来实现 */
  21. bool updateCompareItemRoadOnly(const QList<CompareItemInfo_t>& listItems);
  22. /* 更新一条对比项通道信息 */
  23. bool updateCompareItemOneRoadOnly(const QList<CompareItemInfo_t>& listItems);
  24. /* 删除对比项信息,同时也会删除对比项通道 */
  25. bool deleteCompareItem(const QList<int> listIDs);
  26. /* 删除对比项通道信息 */
  27. bool deleteCompareItemRoad(const QList<int>& listIDs);
  28. /* 只删除对比项通道信息,int是对比项ID */
  29. bool deleteCompareItemRoad(QMap<int, QList<int>>& mapItemRoads);
  30. /* ================================================================================== */
  31. /* 获取系统配置信息 */
  32. bool getSystemConfig(QMap<std::string, std::string>& mapConfig);
  33. /* 更新系统配置信息 */
  34. bool updateSystemConfig(const std::string& key, const std::string& value, const std::string& desc = std::string());
  35. /* ================================================================================== */
  36. /* 获取检测时段配置 */
  37. bool getDetectPeriodConfig(QMap<int, DetectPeriodConfig_t>& mapDetectConfig);
  38. /* 插入检测时段配置 */
  39. bool insertDetectPeriodConfig(const QMap<int, DetectPeriodConfig_t>& mapDetectConfig);
  40. /* 删除某些对比项的检测时段 */
  41. bool deleteDetectPeriodConfig(const QList<int>& listIDs);
  42. /* ================================================================================== */
  43. /* 写入报警信息 */
  44. bool insertAlarmInfo(const std::list<AlarmInfo_t>& listAlarm);
  45. /* 写入一致性报警信息,先写入主通道报警,获取返回的PKID,再写入次通道数据 */
  46. bool insertConsistencyAlarmInfo(const AlarmInfo_t& mainAlarm, const AlarmInfo_t& subAlarm);
  47. /* 删除早于一定时间的报警信息 */
  48. bool deleteAlarmInfoBeforeTime(const QDateTime& timePoint);
  49. /* 获取早于某个时间点的报警信息 */
  50. bool getAlarmInfoBeforeTime(const QDateTime& timePoint, std::list<AlarmInfo_t>& listAlarm);
  51. /* 更新报警文件的状态 */
  52. bool updateAlarmFileState(const std::list<AlarmInfo_t>& listAlarm);
  53. /* ================================================================================== */
  54. /* 插入录音文件信息 */
  55. bool insertRecordFileInfo(const std::list<RecordFileInfo_t>& listRecordFile);
  56. /* 更新录音文件信息 */
  57. bool updateRecordFileInfo(const std::list<RecordFileInfo_t>& listRecordFile);
  58. /* 将所有的录音文件状态设置为已删除 */
  59. bool deleteAllRecordFileInfo();
  60. /* 删除早于一定时间的录音文件信息 */
  61. bool deleteRecordFileInfoBeforeTime(const QDateTime& timePoint);
  62. /* 获取早于某个时间点的录音文件信息 */
  63. bool getRecordFileInfoBeforeTime(const QDateTime& timePoint, std::list<RecordFileInfo_t>& listRecordFile);
  64. /* ================================================================================== */
  65. /* 获取声卡信息 */
  66. bool getSoundCardInfo(std::map<std::string, SoundCardPCMInfo_t>& mapSoundCard);
  67. /* 清空表格 */
  68. bool clearSoundCardInfo();
  69. /* 插入PCM通道信息 */
  70. bool insertPCMChannelInfo(const std::map<std::string, SoundCardPCMInfo_t>& mapSoundCard);
  71. private:
  72. std::shared_ptr<spdlog::logger> m_logger = nullptr;
  73. };
  74. #endif // __FROMWEBAPI_H_