|
@@ -33,7 +33,7 @@ bool FromWebAPI::initWebApi(const QString& url, const QString& serverID, const Q
|
|
|
}
|
|
|
#if defined(Q_OS_WIN)
|
|
|
#ifdef QT_DEBUG
|
|
|
- QString libFile = QString("%1/LHSqlWebInterfaced.dll").arg(QApplication::applicationDirPath());
|
|
|
+ QString libFile = QString("%1/LHSqlWebInterface.dll").arg(QApplication::applicationDirPath());
|
|
|
#else
|
|
|
QString libFile = QString("%1/LHSqlWebInterface.dll").arg(QApplication::applicationDirPath());
|
|
|
#endif
|
|
@@ -53,7 +53,7 @@ bool FromWebAPI::initWebApi(const QString& url, const QString& serverID, const Q
|
|
|
LH_WRITE_LOG_DEBUG(QString("ServerID:%1").arg(serverID));
|
|
|
LH_WRITE_LOG_DEBUG(QString("ServerKey:%1").arg(serverKey));
|
|
|
|
|
|
- m_httpApi->DBInit(url.toStdString().c_str());
|
|
|
+ auto pHttp = m_httpApi->DBInit(url.toStdString().c_str());
|
|
|
|
|
|
int ret = 0;
|
|
|
|
|
@@ -70,7 +70,7 @@ bool FromWebAPI::initWebApi(const QString& url, const QString& serverID, const Q
|
|
|
#endif
|
|
|
|
|
|
/* 登录,第二个参数是限制的服务 */
|
|
|
- ret = m_httpApi->DBLogin("", serverID, serverKey, m_userToken);
|
|
|
+ ret = m_httpApi->DBLogin("", serverID, serverKey, m_userToken, true, pHttp);
|
|
|
if(ret < 0)
|
|
|
{
|
|
|
LH_WRITE_ERROR(QString("Login failed:%1, error info:%2").arg(ret).arg(m_httpApi->DoGetLastError(&ret)));
|
|
@@ -94,7 +94,7 @@ bool FromWebAPI::getDeviceInfo(QMap<QString, DeviceInfo>& mapDevice)
|
|
|
json0["opName"] = "ESM8C_GetDevice";
|
|
|
QString strCmd = QString::fromStdString(json0.dump());
|
|
|
QString strRet;
|
|
|
- auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_Select, strCmd, strRet);
|
|
|
+ auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_Select, strCmd, strRet, true);
|
|
|
if(ret < 0)
|
|
|
{
|
|
|
LH_WRITE_ERROR(QString("从数据库获取设备失败:%1, 错误信息:%2").arg(ret).arg(m_httpApi->DoGetLastError(&ret)));
|
|
@@ -256,14 +256,13 @@ bool FromWebAPI::insertData(QList<ExecPlanItemInfo>& list)
|
|
|
/* 写入EQM数据库 */
|
|
|
QString strCmd = QString::fromStdString(json0.dump());
|
|
|
QString strRet;
|
|
|
- auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_BatchTransAction, strCmd, strRet);
|
|
|
+ auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_BatchTransAction, strCmd, strRet, true);
|
|
|
if(ret < 0)
|
|
|
{
|
|
|
LH_WRITE_ERROR(QString("写入EQM数据库失败:%1, 错误信息:%2").arg(ret).arg(m_httpApi->DoGetLastError(&ret)));
|
|
|
return false;
|
|
|
}
|
|
|
- LH_WRITE_LOG("写入EQM数据库成功");
|
|
|
-
|
|
|
+ LH_WRITE_LOG(QString("计划写入EQM数据库成功, 计划数目:%1").arg(QString::number(list.size())));
|
|
|
|
|
|
return true;
|
|
|
}
|
|
@@ -287,7 +286,7 @@ bool FromWebAPI::getExecPlanData(QList<ExecPlanItemInfo>& list)
|
|
|
json0["opName"] = "ESM8C_GetExecPlan";
|
|
|
QString strCmd = QString::fromStdString(json0.dump());
|
|
|
QString strRet;
|
|
|
- auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_Select, strCmd, strRet);
|
|
|
+ auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_Select, strCmd, strRet, true);
|
|
|
if(ret < 0)
|
|
|
{
|
|
|
LH_WRITE_ERROR(QString("从EQM获取tExecPlan表格数据失败:%1, 错误信息:%2").arg(ret).arg(m_httpApi->DoGetLastError(&ret)));
|
|
@@ -346,9 +345,168 @@ bool FromWebAPI::getExecPlanData(QList<ExecPlanItemInfo>& list)
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
- LH_WRITE_LOG_DEBUG(QString("从EQM.tExecPlan表格获取数据成功,数据数目:%1").arg(list.size()));
|
|
|
+ LH_WRITE_LOG_DEBUG(QString("从EQM.tExecPlan表格获取数据成功,计划数目:%1").arg(list.size()));
|
|
|
+
|
|
|
+
|
|
|
+ return true;
|
|
|
+}
|
|
|
+
|
|
|
+/* 将页面的配置写入数据库 */
|
|
|
+bool FromWebAPI::insertConfigData(QMap<int, int>& mapConfig)
|
|
|
+{
|
|
|
+ if(m_httpApi == nullptr)
|
|
|
+ {
|
|
|
+ LH_WRITE_ERROR("WebAPI is nullptr");
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
+ deleteConfigData(mapConfig);
|
|
|
+
|
|
|
+ nJson json0 = nJson::array();
|
|
|
+ try{
|
|
|
+ for(auto begin = mapConfig.begin(), end = mapConfig.end(); begin != end; begin++)
|
|
|
+ {
|
|
|
+ nJson json1;
|
|
|
+ json1["opName"] = "ESM8C_InsertExecPlanConfig";
|
|
|
+ json1["Key"] = QUuid::createUuid().toString().toStdString();
|
|
|
+ nJson json2;
|
|
|
+ json2["keyWord"] = begin.key();
|
|
|
+ json2["value1"] = begin.value();
|
|
|
+ json1["paramList"] = json2;
|
|
|
+ json0.push_back(json1);
|
|
|
+ }
|
|
|
+ }catch (const nJson::parse_error& e) {
|
|
|
+ SPDLOG_ERROR("生成json数据失败:{}", e.what());
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ catch (const nJson::exception& e)
|
|
|
+ {
|
|
|
+ SPDLOG_ERROR("生成json数据失败:{}", e.what());
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ catch (...)
|
|
|
+ {
|
|
|
+ SPDLOG_ERROR("生成json数据失败");
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
+ /* 写入EQM数据库 */
|
|
|
+ QString strCmd = QString::fromStdString(json0.dump());
|
|
|
+ QString strRet;
|
|
|
+ auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_BatchTransAction, strCmd, strRet, true);
|
|
|
+ if(ret < 0)
|
|
|
+ {
|
|
|
+ LH_WRITE_ERROR(QString("写入tExecPlanConfig失败:%1, 错误信息:%2").arg(ret).arg(m_httpApi->DoGetLastError(&ret)));
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ LH_WRITE_LOG(QString("页面配置写入tExecPlanConfig成功, 计划数目:%1").arg(QString::number(mapConfig.size())));
|
|
|
+
|
|
|
+ return true;
|
|
|
+}
|
|
|
+
|
|
|
+/* 删除配置数据 */
|
|
|
+bool FromWebAPI::deleteConfigData(QMap<int, int>& mapConfig)
|
|
|
+{
|
|
|
+ if(m_httpApi == nullptr)
|
|
|
+ {
|
|
|
+ LH_WRITE_ERROR("WebAPI is nullptr");
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
+ nJson json0 = nJson::array();
|
|
|
+ try{
|
|
|
+ for(auto begin = mapConfig.begin(), end = mapConfig.end(); begin != end; begin++)
|
|
|
+ {
|
|
|
+ nJson json1;
|
|
|
+ json1["opName"] = "ESM8C_DeleteExecPlanConfig";
|
|
|
+ json1["Key"] = QUuid::createUuid().toString().toStdString();
|
|
|
+ nJson json2;
|
|
|
+ json2["keyWord"] = begin.key();
|
|
|
+ json1["paramList"] = json2;
|
|
|
+ json0.push_back(json1);
|
|
|
+ }
|
|
|
+ }catch (const nJson::parse_error& e) {
|
|
|
+ SPDLOG_ERROR("生成json数据失败:{}", e.what());
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ catch (const nJson::exception& e)
|
|
|
+ {
|
|
|
+ SPDLOG_ERROR("生成json数据失败:{}", e.what());
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ catch (...)
|
|
|
+ {
|
|
|
+ SPDLOG_ERROR("生成json数据失败");
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
+ /* 写入EQM数据库 */
|
|
|
+ QString strCmd = QString::fromStdString(json0.dump());
|
|
|
+ QString strRet;
|
|
|
+ auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_BatchTransAction, strCmd, strRet, true);
|
|
|
+ if(ret < 0)
|
|
|
+ {
|
|
|
+ LH_WRITE_ERROR(QString("删除tExecPlanConfig表格数据失败:%1, 错误信息:%2").arg(ret).arg(m_httpApi->DoGetLastError(&ret)));
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ LH_WRITE_LOG_DEBUG(QString("删除tExecPlanConfig表格数据成功, 计划数目:%1").arg(QString::number(mapConfig.size())));
|
|
|
+
|
|
|
+ return true;
|
|
|
+}
|
|
|
+
|
|
|
+/* 获取配置数据 */
|
|
|
+bool FromWebAPI::getConfigData(QMap<int, int>& mapConfig)
|
|
|
+{
|
|
|
+ if(m_httpApi == nullptr)
|
|
|
+ {
|
|
|
+ LH_WRITE_ERROR("WebAPI is nullptr");
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ nJson json0;
|
|
|
+ json0["opName"] = "ESMC_GetExecPlanConfig";
|
|
|
+ QString strCmd = QString::fromStdString(json0.dump());
|
|
|
+ QString strRet;
|
|
|
+ auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_Select, strCmd, strRet, true);
|
|
|
+ if(ret < 0)
|
|
|
+ {
|
|
|
+ LH_WRITE_ERROR(QString("获取tExecPlanConfig表格数据失败:%1, 错误信息:%2").arg(ret).arg(m_httpApi->DoGetLastError(&ret)));
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ /* 解析获取到的JSON数据 */
|
|
|
+ LH_WRITE_LOG_DEBUG(strRet);
|
|
|
+ try{
|
|
|
+ nJson json1 = nJson::parse(strRet.toStdString());
|
|
|
+ int retCode = json1["code"].get<int>();
|
|
|
+ if(retCode != 0)
|
|
|
+ {
|
|
|
+ LH_WRITE_ERROR("获取tExecPlanConfig失败");
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ nJson result = json1["result"];
|
|
|
+ for(auto& it : result)
|
|
|
+ {
|
|
|
+ int keyWord = it["keyWord"].get<int>();
|
|
|
+ int value1 = it["value1"].get<int>();
|
|
|
+ mapConfig.insert(keyWord, value1);
|
|
|
+ }
|
|
|
|
|
|
+ } catch (const nJson::parse_error& e) {
|
|
|
+ LH_WRITE_ERROR(QString("解析模版编号失败:%1").arg(e.what()));
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ catch (const nJson::exception& e)
|
|
|
+ {
|
|
|
+ LH_WRITE_ERROR(QString("解析模版编号失败:%1").arg(e.what()));
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ catch(...)
|
|
|
+ {
|
|
|
+ LH_WRITE_ERROR("解析模版编号失败");
|
|
|
+ return false;
|
|
|
+ }
|
|
|
|
|
|
+ LH_WRITE_LOG_DEBUG(QString("获取tExecPlanConfig表格数据成功,数据数目:%1").arg(mapConfig.size()));
|
|
|
+
|
|
|
return true;
|
|
|
}
|
|
|
|
|
@@ -365,7 +523,7 @@ bool FromWebAPI::getEQMTemplateID(QList<int>& listId)
|
|
|
json0["opName"] = "ESMC_GetTemplateNumFromExecPlan";
|
|
|
QString strCmd = QString::fromStdString(json0.dump());
|
|
|
QString strRet;
|
|
|
- auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_Select, strCmd, strRet);
|
|
|
+ auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_Select, strCmd, strRet, true);
|
|
|
if(ret < 0)
|
|
|
{
|
|
|
LH_WRITE_ERROR(QString("从EQM获取模版编号失败:%1, 错误信息:%2").arg(ret).arg(m_httpApi->DoGetLastError(&ret)));
|
|
@@ -429,7 +587,7 @@ bool FromWebAPI::deleteAllRow()
|
|
|
json0["opName"] = "ESM8C_DeleteAllRow";
|
|
|
QString strCmd = QString::fromStdString(json0.dump());
|
|
|
QString strRet;
|
|
|
- auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_Delete, strCmd, strRet);
|
|
|
+ auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_Delete, strCmd, strRet, true);
|
|
|
if(ret < 0)
|
|
|
{
|
|
|
LH_WRITE_ERROR(QString("删除所有行失败:%1, 错误信息:%2").arg(ret).arg(m_httpApi->DoGetLastError(&ret)));
|
|
@@ -464,7 +622,7 @@ bool FromWebAPI::deleteAllTransmitterPlan()
|
|
|
json0["paramList"].push_back(json1);
|
|
|
QString strCmd = QString::fromStdString(json0.dump());
|
|
|
QString strRet;
|
|
|
- auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_Delete, strCmd, strRet);
|
|
|
+ auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_Delete, strCmd, strRet, true);
|
|
|
if(ret < 0)
|
|
|
{
|
|
|
LH_WRITE_ERROR(QString("删除发射机(%3)计划失败:%1, 错误信息:%2").arg(ret).arg(m_httpApi->DoGetLastError(&ret)).arg(it));
|
|
@@ -494,7 +652,7 @@ bool FromWebAPI::saveTemplate(const QString& templateName, const int type, QList
|
|
|
nJson json2;
|
|
|
|
|
|
json2["templateName"] = templateName.toStdString();
|
|
|
- json2["type"] = type;
|
|
|
+ json2["templateType"] = type;
|
|
|
json2["execDate"] = it.date.toString("yyyy-MM-dd").toStdString();
|
|
|
json2["execTime"] = it.execTime.toString("hh:mm:ss").toStdString();
|
|
|
json2["deviceName"] = it.devName.toStdString();
|
|
@@ -513,13 +671,13 @@ bool FromWebAPI::saveTemplate(const QString& templateName, const int type, QList
|
|
|
/* 写入EQM数据库 */
|
|
|
QString strCmd = QString::fromStdString(json0.dump());
|
|
|
QString strRet;
|
|
|
- auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_BatchTransAction, strCmd, strRet);
|
|
|
+ auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_BatchTransAction, strCmd, strRet, true);
|
|
|
if(ret < 0)
|
|
|
{
|
|
|
LH_WRITE_ERROR(QString("保存到模板失败:%1, 错误信息:%2").arg(ret).arg(m_httpApi->DoGetLastError(&ret)));
|
|
|
return false;
|
|
|
}
|
|
|
- LH_WRITE_LOG("保存到模板成功");
|
|
|
+ LH_WRITE_LOG("保存到模板成功,模板名称:" + templateName + ", 类型:" + QString::number(type) + ", 计划数目:" + QString::number(list.size()));
|
|
|
|
|
|
return true;
|
|
|
|
|
@@ -541,7 +699,7 @@ bool FromWebAPI::getTemplate(QString templateName, QList<ExecPlanItemInfo>& list
|
|
|
json0["paramList"] = json1;
|
|
|
QString strCmd = QString::fromStdString(json0.dump());
|
|
|
QString strRet;
|
|
|
- auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_Select, strCmd, strRet);
|
|
|
+ auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_Select, strCmd, strRet, true);
|
|
|
if(ret < 0)
|
|
|
{
|
|
|
LH_WRITE_ERROR(QString("获取模板失败:%1, 错误信息:%2").arg(ret).arg(m_httpApi->DoGetLastError(&ret)));
|
|
@@ -613,7 +771,7 @@ bool FromWebAPI::getTemplateList(QMap<QString, int>& list)
|
|
|
json0["opName"] = "TMS_GetExecPlanTemplateList";
|
|
|
QString strCmd = QString::fromStdString(json0.dump());
|
|
|
QString strRet;
|
|
|
- auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_Select, strCmd, strRet);
|
|
|
+ auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_Select, strCmd, strRet, true);
|
|
|
if(ret < 0)
|
|
|
{
|
|
|
LH_WRITE_ERROR(QString("获取模板列表失败:%1, 错误信息:%2").arg(ret).arg(m_httpApi->DoGetLastError(&ret)));
|
|
@@ -662,6 +820,11 @@ bool FromWebAPI::getTemplateList(QMap<QString, int>& list)
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
+ // for(auto it = list.begin(); it != list.end(); it++)
|
|
|
+ // {
|
|
|
+ // LH_WRITE_LOG_DEBUG(QString("模板名称:%1, 类型:%2").arg(it.key()).arg(it.value()));
|
|
|
+ // }
|
|
|
+
|
|
|
return true;
|
|
|
}
|
|
|
|
|
@@ -681,7 +844,7 @@ bool FromWebAPI::deleteTemplate(const QString& name)
|
|
|
json0["paramList"] = json1;
|
|
|
QString strCmd = QString::fromStdString(json0.dump());
|
|
|
QString strRet;
|
|
|
- auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_Delete, strCmd, strRet);
|
|
|
+ auto ret = m_httpApi->DBDoInterface(enDBOperatorType::EDBOT_Delete, strCmd, strRet, true);
|
|
|
if(ret < 0)
|
|
|
{
|
|
|
LH_WRITE_ERROR(QString("删除模板失败:%1, 错误信息:%2").arg(ret).arg(m_httpApi->DoGetLastError(&ret)));
|