From 080afae264fe7ff89a54886f28dff208fe5a06c4 Mon Sep 17 00:00:00 2001 From: chenshijun <csj_sky@126.com> Date: 星期二, 16 四月 2019 22:01:35 +0800 Subject: [PATCH] 整合代码 --- QiaoJiaSystem/VideoServer/QiaoJia/DB/LDBTool.cpp | 34 +++++++++++++++++++++++++++++++++- 1 files changed, 33 insertions(+), 1 deletions(-) diff --git a/QiaoJiaSystem/VideoServer/QiaoJia/DB/LDBTool.cpp b/QiaoJiaSystem/VideoServer/QiaoJia/DB/LDBTool.cpp index bc32773..d9bb45b 100644 --- a/QiaoJiaSystem/VideoServer/QiaoJia/DB/LDBTool.cpp +++ b/QiaoJiaSystem/VideoServer/QiaoJia/DB/LDBTool.cpp @@ -455,6 +455,35 @@ } } +bool LDBTool::updateCamDevSnapshotbyID(const QString &strID, const QString &imgUrl) { + QMutexLocker mutexLocker(&m_mutexVisit);//TODO + QSqlTableModel pModel(NULL, m_db); + pModel.setTable("cam_dev"); + pModel.setFilter( + QObject::tr("cam_dev_id = '%1'").arg(strID)); + pModel.setEditStrategy(QSqlTableModel::OnManualSubmit);//OnManualSubmit OnFieldChange + pModel.select(); + + QSqlRecord rec = pModel.record(0); + rec.setValue("reserved", imgUrl); + + int rowCount = pModel.rowCount(); + if (rowCount > 0) { + pModel.setRecord(0, rec);//TODO + } + + m_db.transaction();//寮�濮嬩簨鍔℃搷浣� + + if (pModel.submitAll()) { + m_db.commit();//鎻愪氦 + return true; + } else { + m_db.rollback();//鍥炴粴 + ERR("updateCamDevSnapshot err ,Database Error: " << pModel.lastError().text().toStdString()); + return false; + } +} + bool LDBTool::updateCamDevSnapshot(const QString &strIp, const QString &imgUrl) { QMutexLocker mutexLocker(&m_mutexVisit);//TODO QSqlTableModel pModel(NULL, m_db); @@ -501,7 +530,7 @@ std::list<Record_Cam_Dev> lst; QSqlTableModel pModel(NULL, m_db); pModel.setTable("cam_dev"); - pModel.setFilter(QObject::tr("cam_dev_id != '' and cam_dev_id is not null and type='0'")); + pModel.setFilter(QObject::tr("cam_dev_id != '' and cam_dev_id is not null")); pModel.setEditStrategy(QSqlTableModel::OnManualSubmit);//OnManualSubmit OnFieldChange pModel.select(); @@ -511,6 +540,7 @@ Record_Cam_Dev lChannelRec; QSqlRecord rec = pModel.record(i); lChannelRec.n_id = rec.value("id").toInt(); + lChannelRec.type = rec.value("type").toInt(); lChannelRec.str_cam_dev_id = rec.value("cam_dev_id").toString(); lChannelRec.str_name = rec.value("name").toString(); lChannelRec.str_addr = rec.value("addr").toString(); @@ -2658,6 +2688,7 @@ rec.setValue("is_run", sdkRule.nIsRun); rec.setValue("img_threshold", sdkRule.nThreshold); rec.setValue("img_quality", sdkRule.nQuality); + rec.setValue("perimeter_obj_type", sdkRule.strPerimeterObjType); int rowCount = pModel.rowCount(); if (rowCount == 0) { @@ -2704,6 +2735,7 @@ rule.nAlarmNumUpperLimit = rec.value("alarm_num_upper").toInt(); rule.nAlarmNumLowerLimit = rec.value("alarm_num_lower").toInt(); rule.strBroadcast = rec.value("broadcast_area").toString(); + rule.strPerimeterObjType = rec.value("perimeter_obj_type").toString(); rule.nIsRun = rec.value("is_run").toInt(); rule.nSdkType = rec.value("sdk_type").toInt(); ruleMap[rule.nSdkType] = rule; -- Gitblit v1.8.0